pandas和spark dataframe互相转换实例详解


Posted in Python onFebruary 18, 2020

这篇文章主要介绍了pandas和spark dataframe互相转换实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

from pyspark.sql import SparkSession
# 初始化spark会话
spark = SparkSession \
  .builder \
  .getOrCreate()
spark_df = spark.createDataFrame(pandas_df)

spark的dataframe转pandas的dataframe

import pandas as pd
pandas_df = spark_df.toPandas()

由于pandas的方式是单机版的,即toPandas()的方式是单机版的,所以参考breeze_lsw改成分布式版本:

import pandas as pd
def _map_to_pandas(rdds):
  return [pd.DataFrame(list(rdds))]
  
def topas(df, n_partitions=None):
  if n_partitions is not None: df = df.repartition(n_partitions)
  df_pand = df.rdd.mapPartitions(_map_to_pandas).collect()
  df_pand = pd.concat(df_pand)
  df_pand.columns = df.columns
  return df_pand
  
pandas_df = topas(spark_df)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python插入排序算法的实现代码
Nov 21 Python
使用python解析xml成对应的html示例分享
Apr 02 Python
Windows8下安装Python的BeautifulSoup
Jan 22 Python
python分析网页上所有超链接的方法
May 08 Python
python实现文本文件合并
Dec 29 Python
Python内置函数—vars的具体使用方法
Dec 04 Python
python实现简单的文字识别
Nov 27 Python
在python中将list分段并保存为array类型的方法
Jul 15 Python
python os.path.isfile()因参数问题判断错误的解决
Nov 29 Python
pytorch:model.train和model.eval用法及区别详解
Feb 20 Python
通用的Django注册功能模块实现方法
Feb 05 Python
pytorch 实现在测试的时候启用dropout
May 27 Python
PyTorch中Tensor的数据统计示例
Feb 17 #Python
pytorch实现Tensor变量之间的转换
Feb 17 #Python
Macbook安装Python最新版本、GUI开发环境、图像处理、视频处理环境详解
Feb 17 #Python
PyCharm无法识别PyQt5的2种解决方法,ModuleNotFoundError: No module named 'pyqt5'
Feb 17 #Python
python识别验证码图片实例详解
Feb 17 #Python
Python pyautogui模块实现鼠标键盘自动化方法详解
Feb 17 #Python
Matplotlib使用字符串代替变量绘制散点图的方法
Feb 17 #Python
You might like
IP138 IP地址查询小偷实现代码
2010/02/15 PHP
PHP设计模式 注册表模式
2012/02/05 PHP
解析PHP中$_FILES的使用以及注意事项
2013/07/05 PHP
php使用fsockopen函数发送post,get请求获取网页内容的方法
2014/11/15 PHP
详解Yii2 rules 的验证规则
2016/12/02 PHP
javascript firefox 自动加载iframe 自动调整高宽示例
2013/08/27 Javascript
jsMind通过鼠标拖拽的方式调整节点位置
2015/04/13 Javascript
.NET微信公众号开发之创建自定义菜单
2015/07/16 Javascript
javascript实现方法调用与方法触发小结
2016/03/26 Javascript
AngularJS使用ng-options指令实现下拉框
2016/08/23 Javascript
js实现字符全排列算法的简单方法
2017/05/01 Javascript
jQuery+HTML5实现WebGL高性能烟花绽放动画效果【附demo源码下载】
2017/08/18 jQuery
vue项目国际化vue-i18n的安装使用教程
2018/03/14 Javascript
Vue中的v-for循环key属性注意事项小结
2018/08/12 Javascript
对Vue.js之事件的绑定(v-on: 或者 @ )详解
2018/09/15 Javascript
vue element-ui实现input输入框金额数字添加千分位
2019/12/29 Javascript
js实现QQ邮箱邮件拖拽删除功能
2020/08/27 Javascript
js通过canvas生成图片缩略图
2020/10/02 Javascript
javascript实现点击产生随机图形
2021/01/25 Javascript
[02:52]DOTA2新手基础教程 米波
2014/01/21 DOTA
浅谈Python爬取网页的编码处理
2016/11/04 Python
Python快速排序算法实例分析
2017/11/29 Python
python负载均衡的简单实现方法
2018/02/04 Python
python+influxdb+shell编写区域网络状况表
2018/07/27 Python
python小程序实现刷票功能详解
2019/07/17 Python
Python 爬虫实现增加播客访问量的方法实现
2019/10/31 Python
Python3使用 GitLab API 进行批量合并分支
2020/10/15 Python
如何用H5实现一个触屏版的轮播器的实例
2017/01/09 HTML / CSS
WiFi云数码相框:Nixplay
2018/07/05 全球购物
建筑设计所实习生自我鉴定
2013/09/25 职场文书
乡镇干部十八大感言
2014/02/17 职场文书
车间机修工岗位职责
2014/02/28 职场文书
Pytorch 实现变量类型转换
2021/05/17 Python
TypeScript中条件类型精读与实践记录
2021/10/05 Javascript
「我的青春恋爱物语果然有问题。-妄言录-」第20卷封面公开
2022/03/21 日漫
MongoDB误操作后使用oplog恢复数据
2022/04/11 MongoDB