如何在pyspark中建立直方图
Posted
技术标签:
【中文标题】如何在pyspark中建立直方图【英文标题】:How to build a histogram in pyspark 【发布时间】:2017-09-13 09:31:06 【问题描述】:我有一个大的 pyspark 数据框,想要其中一列的直方图。
我能做到:
df.select.("col").rdd.flatMap(lambda x: x).histogram(100)
但这很慢,似乎将数据帧转换为 rdd,我什至不确定为什么需要 flatMap。
实现这一目标的最佳/最快方法是什么?
【问题讨论】:
您只需要flatMap
是您的列包含嵌套值。其他方式参考这个问题:***.com/questions/36043256/…
【参考方案1】:
将您的数据框转换为熊猫数据框
df_pd = df.toPandas()
然后使用,
%matplotlib inline
import matplotlib.pyplot as plt
df_pd.hist(column='column name')
这应该可以工作
【讨论】:
转换为 Pandas DataFrame 效率非常低,也不能保证在低内存环境下工作。以上是关于如何在pyspark中建立直方图的主要内容,如果未能解决你的问题,请参考以下文章
python 使用PySpark和NumPy的现成数据的直方图