pyspark - 如何在 Pyspark 中计算四分位数?
问题描述
我想计算 spark 数据框中数据的均值、最小值、最大值、标准差、25%、50%、75% 值。我已经尝试过 Summary() 函数,但它没有给出 25%、50% 和 75% 的确切值......即使数据相同,每次运行的值也会发生变化。
如何计算准确的 25%、50% 和 75% 以及其他统计数据?
解决方案
Dataset.summary
用于ApproximatePercentile
计算四分位数。如果您需要精确的四分位数,请使用以下百分位数-
> SELECT percentile(col, 0.3) FROM VALUES (0), (10) AS tab(col);
3.0
> SELECT percentile(col, array(0.25, 0.75)) FROM VALUES (0), (10) AS tab(col);
[2.5,7.5]
推荐阅读
- video - VirtualDub 安装视频编解码器
- datatable - 如何从 output_value 中找到部分匹配并将其与 dt_datatable 中的值匹配,然后使用找到的部分匹配来添加行
- r - 围绕点坐标创建不重叠的六边形
- batch-file - 如何从批处理文件创建文本文件?
- mysql - MySQL查询以查找所有子元素
- c++ - 运行由 protoc 生成的文件时出现分段错误
- plugins - 在 Dynamics CRM 中的自定义按钮后面创建插件
- python - 根据条件选择 Pandas 数据框中的列
- mysql - 可以在查询中使用 IF 吗?
- c - 如何使用 ncurses 修复箭头键的延迟?