如何用 Pandas 根据中值对箱线图进行排序?


要在 Pandas 中根据中值对箱线图进行排序,我们可以按照以下步骤操作

步骤

  • 设置图形大小,并调整子图之间和周围的边距。

  • 使用三列创建包含二维、大小可变、可能存在不同类型数据的表格数据的 Pandas 数据框。

  • 根据marksdob分组数据框元素。

  • 查找数据框的中值

  • 获取中值的已排序值。

  • 从 DataFrame 列创建箱线图。

  • 使用Show()方法显示图形。

示例

import pandas as pd
import matplotlib.pyplot as plt

plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

df = pd.DataFrame([
    [23, 'James', 12],
    [39, 'Jimmy', 27],
    [56, 'Jack', 69],
    [60, 'Tom', 96],
    [80, 'Tim', 79]
], columns=['marks', 'names', 'dob'])

g = df.groupby(["marks", "dob"])

df = pd.DataFrame({col: val['dob'] for col, val in g})

median = df.median()
median.sort_values(ascending=False, inplace=True)

df = df[median.index]
df.boxplot()

plt.show()

输出

输出如下 −

更新于: 2021-10-19

1K+ 浏览量

开启您的 职业生涯

通过完成课程获取认证

开始
广告