Python:如何连接多个 pandas 数据帧以生成盒须图?
Python: how to concatenate multiple pandas dataframes to produce a box-and-whisker plot?
假设我有一个分箱值的数据集。这些 bin 存储在名为 mydict
的字典中。为了获得绘制盒须图所需的直方图数量,我做了:
df_dataset = pd.DataFrame.from_dict(dict([ (k, pd.Series(v)) for k,v in mydict.items() ]))
获取直方图数量:
mydict_min = df_dataset.min()
mydict_max = df_dataset.max()
mydict_median = df_dataset.median()
mydict_1st3rd = df_dataset.quantile([.1, .3])
我的问题:我需要绘制一个 Box-and-Whisker plot given the histogram quantities shown above. How can I do this by using DataFrame.boxplot? In 盒子和胡须是通过以下方式构建的:
import matplotlib.pyplot as plt
from pandas import DataFrame
df = DataFrame({'Parameter': ['A',]*8,
'Site': ['S1', 'S2', 'S1', 'S2', 'S1', 'S2', 'S1', 'S2'],
'Value': [2.34, 2.67, 2.56, 2.89, 3.45, 4.45, 3.67, 4.56]})
df.boxplot(by=['Parameter', 'Site'])
plt.show()
我需要创建一个 DataFrame 的 DataFrame 吗?我已经有了直方图数量(如上所示)并且不需要分组。 我如何修改此代码以包含我的直方图数量?
经过简短的搜索,我发现不需要连接任何东西。简单的答案是从 df_dataset
构造 Box-and-Whisker,因为它已经是 series
,因此它存储了所有相关的直方图数量。
创建 Box-and-Whisker 的行是:
df_dataset.plot.box()
可以找到更多信息 here。
坐标轴标题、绘图标题、网格、箱子和其他所有内容都可以根据需要进行设置。
假设我有一个分箱值的数据集。这些 bin 存储在名为 mydict
的字典中。为了获得绘制盒须图所需的直方图数量,我做了:
df_dataset = pd.DataFrame.from_dict(dict([ (k, pd.Series(v)) for k,v in mydict.items() ]))
获取直方图数量:
mydict_min = df_dataset.min()
mydict_max = df_dataset.max()
mydict_median = df_dataset.median()
mydict_1st3rd = df_dataset.quantile([.1, .3])
我的问题:我需要绘制一个 Box-and-Whisker plot given the histogram quantities shown above. How can I do this by using DataFrame.boxplot? In
import matplotlib.pyplot as plt
from pandas import DataFrame
df = DataFrame({'Parameter': ['A',]*8,
'Site': ['S1', 'S2', 'S1', 'S2', 'S1', 'S2', 'S1', 'S2'],
'Value': [2.34, 2.67, 2.56, 2.89, 3.45, 4.45, 3.67, 4.56]})
df.boxplot(by=['Parameter', 'Site'])
plt.show()
我需要创建一个 DataFrame 的 DataFrame 吗?我已经有了直方图数量(如上所示)并且不需要分组。 我如何修改此代码以包含我的直方图数量?
经过简短的搜索,我发现不需要连接任何东西。简单的答案是从 df_dataset
构造 Box-and-Whisker,因为它已经是 series
,因此它存储了所有相关的直方图数量。
创建 Box-and-Whisker 的行是:
df_dataset.plot.box()
可以找到更多信息 here。
坐标轴标题、绘图标题、网格、箱子和其他所有内容都可以根据需要进行设置。