我可以将 Pyspark RDD 用作 Pandas DataFrame 吗? Pyspark/spark 在数据分析中对 Pandas 的限制?
Posted
技术标签:
【中文标题】我可以将 Pyspark RDD 用作 Pandas DataFrame 吗? Pyspark/spark 在数据分析中对 Pandas 的限制?【英文标题】:Can I use Pyspark RDD as Pandas DataFrame? Limitations of Pyspark/spark over Pandas in data analysis? 【发布时间】:2018-08-15 05:20:39 【问题描述】:Pandas 数据框对于执行数据分析非常有用,但它不能很好地处理大数据。因此,我正在考虑在有大数据时使用 PySpark。所以我的问题是:
1.如何将 Pandas DataFrame 转换为 Pyspark RDD 并返回 pandas data-frame?
dataframe=pd.DataFrame('TimeStamp':[pd.to_datetime('2018-7-7 00:10:00 UTC'),pd.to_datetime('2018-7-8 00:10:00 UTC')],'UserId':[111,222], 'Name' ['a', 'b'])
2.Pyspark/spark 对 Pandas 执行数据分析可能存在哪些限制?
还请建议我可以在这种情况下使用的有用的参考资料、书籍、视频吗?
【问题讨论】:
能否将您的代码粘贴为code
,而不是截图?
已删除截图 :)
对于您的第一个答案,我建议您查看此链接:***.com/questions/37513355/… 会帮助您。
谢谢。您能否为 Q 2 建议任何可靠的链接。由于我现在使用 pandas 进行数据分析并且熟悉一些 spark 概念,但我不知道我是否能够使用我的 spark 执行所有这些操作我可以使用熊猫。
我同时使用 pyspark 和 pandas,有时甚至同时使用,这当然取决于您的需要,如果您想在分布式艺术中处理数据,那么 pysaprk 就是您的选择。可能它可能不像使用 Pandas 那样简单,因为 Pyspark 的资源相对比 pandas 小。您可能需要User defined functions
才能完成您的工作,因为并非 Pandas 的所有功能都可用。快速谷歌搜索给了我这个:quora.com/…
【参考方案1】:
熊猫 -> pyspark
spark = SparkSession.builder.master("local[*]").getOrCreate()
sparkDf = spark.createDataFrame(pandas_df)`
Pyspark -> 熊猫
pdf = sparkDf.toPandas()
【讨论】:
你能详细解释一下吗?表示我想知道之前是否有任何步骤: sparkDf = context.createDataFrame(pandas_df) 感谢您的回复。但我收到此错误异常:Java gateway process exited before sent its port number after execution of spark = SparkSession.builder.master("local[*]").getOrCreate()`以上是关于我可以将 Pyspark RDD 用作 Pandas DataFrame 吗? Pyspark/spark 在数据分析中对 Pandas 的限制?的主要内容,如果未能解决你的问题,请参考以下文章