在 PySpark 上描述数据帧

Tok*_*kyo 4 python pandas apache-spark pyspark

我有一个相当大的 Parquet 文件,我正在使用它加载

file = spark.read.parquet('hdfs/directory/test.parquet')
Run Code Online (Sandbox Code Playgroud)

现在我想得到一些统计数据(类似于 pandasdescribe()函数)。我试图做的是:

file_pd = file.toPandas()
file_pd.describe()
Run Code Online (Sandbox Code Playgroud)

但显然这需要将所有数据加载到内存中,并且会失败。任何人都可以提出解决方法吗?

oll*_*ik1 15

你需要什么统计数据?Spark 也有类似的功能

file.summary().show()
Run Code Online (Sandbox Code Playgroud)
+-------+----+
|summary|test|
+-------+----+
|  count|   3|
|   mean| 2.0|
| stddev| 1.0|
|    min|   1|
|    25%|   1|
|    50%|   2|
|    75%|   3|
|    max|   3|
+-------+----+
Run Code Online (Sandbox Code Playgroud)

  • 当 df 有多个列类型:字符串和浮点数时,我该如何实现它,就像我应用它一样,输出不整齐,不利于可视化。提前致谢 (2认同)