pyspark.sql.DataFrame与pandas.DataFrame之间的相互转换实例

yipeiwu_com6年前Python基础

代码如下,步骤流程在代码注释中可见:

# -*- coding: utf-8 -*-
import pandas as pd
from pyspark.sql import SparkSession
from pyspark.sql import SQLContext
from pyspark import SparkContext
 
#初始化数据
 
#初始化pandas DataFrame
df = pd.DataFrame([[1, 2, 3], [4, 5, 6]], index=['row1', 'row2'], columns=['c1', 'c2', 'c3'])
 
#打印数据
print df
 
#初始化spark DataFrame
sc = SparkContext()
if __name__ == "__main__":
 spark = SparkSession\
  .builder\
  .appName("testDataFrame")\
  .getOrCreate()
 
sentenceData = spark.createDataFrame([
 (0.0, "I like Spark"),
 (1.0, "Pandas is useful"),
 (2.0, "They are coded by Python ")
], ["label", "sentence"])
 
#显示数据
sentenceData.select("label").show()
 
#spark.DataFrame 转换成 pandas.DataFrame
sqlContest = SQLContext(sc)
spark_df = sqlContest.createDataFrame(df)
 
#显示数据
spark_df.select("c1").show()
 
 
# pandas.DataFrame 转换成 spark.DataFrame
pandas_df = sentenceData.toPandas()
 
#打印数据
print pandas_df

程序结果:

以上这篇pyspark.sql.DataFrame与pandas.DataFrame之间的相互转换实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python+OpenCV 实现图片无损旋转90°且无黑边

Python+OpenCV 实现图片无损旋转90°且无黑边

0. 引言 有如上一张图片,在以往的图像旋转处理中,往往得到如图所示的图片。 然而,在进行一些其他图像处理或者图像展示时,黑边带来了一些不便。本文解决图片旋转后出现黑边的问题,实现了...

PyQt5固定窗口大小的方法

PyQt5固定窗口大小的方法

直接以数值固定大小 根据屏幕大小固定大小 禁止最大化按钮 MainWindow.setWindowFlags(QtCore.Qt.WindowMinimizeButtonHint...

用python实现简单EXCEL数据统计的实例

用python实现简单EXCEL数据统计的实例

任务: 用python时间简单的统计任务-统计男性和女性分别有多少人。 用到的物料:xlrd 它的作用-读取excel表数据 代码: import xlrd workbook =...

django的csrf实现过程详解

django的csrf实现过程详解

如果是ajax提交,可以按照下面的方式处理 <script src="/static/jq/jquery-3.3.1.js"></script> <s...

Python模块结构与布局操作方法实例分析

本文实例讲述了Python模块结构与布局操作方法。分享给大家供大家参考,具体如下: #coding=utf8 #起始行 #!/usr/bin/env python #模块文档 '''...