【问题标题】:How to create a boxplot from pre-aggregated/grouped data in Python?如何从 Python 中的预聚合/分组数据创建箱线图?
【发布时间】:2020-06-04 14:42:15
【问题描述】:

使用 Matplotlib/Pandas/Seaborn,如何从聚合数据而不是原始数据构建箱线图?

背景:我知道数百万人的年龄,我想为此制作一个箱线图。因为我有数百万行,所以我首先使用 PySpark 聚合我的数据集,然后再继续在 Pandas 中进行绘图。结果是我有一个数据集,其中包含一定年龄的人数(例如 10 万人 18 岁)。

我似乎在 Seaborn 或 maptlotlib 包中找不到选项。我错过了什么吗?

【问题讨论】:

    标签: python matplotlib pyspark aggregate boxplot


    【解决方案1】:

    我找到了以下解决方案。

    1. 使用 PySpark 聚合数据并使用键名将此数据存储在字典中。字典result 应该是这样的:

      {'mean': 45.30698829299204, 'med': 47.0, 'q1': 27.0, 'q3': 62.0, 'iqr': 35.0, 'whishi': 114, 'whislo': 0, 'fliers': array([[118], [118]) }

    2. 绘制可以使用matplotlib boxplot抽屉函数bxp,例如:

      fig, ax = plt.subplots(figsize=(6, 12)) ax.bxp([result], showmeans = True, meanline = True)

    详情请见here

    如果您有更好的解决方案,请随时发表评论或回答。

    【讨论】:

      猜你喜欢
      • 2011-12-17
      • 1970-01-01
      • 2018-04-15
      • 1970-01-01
      • 1970-01-01
      • 2021-02-03
      • 1970-01-01
      • 2020-01-23
      相关资源
      最近更新 更多