如何用 Pandas 根据中值对箱线图进行排序?
要在 Pandas 中根据中值对箱线图进行排序,我们可以按照以下步骤操作
步骤
设置图形大小,并调整子图之间和周围的边距。
使用三列创建包含二维、大小可变、可能存在不同类型数据的表格数据的 Pandas 数据框。
根据marks和dob分组数据框元素。
查找数据框的中值。
获取中值的已排序值。
从 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()
输出
输出如下 −
广告