列的我已经在Python以下数据框(实际数据帧是更大的,只是呈现出小样本):Python的箱线图出不同长度
A B C D E F
0 0.43 0.52 0.96 1.17 1.17 2.85
1 0.43 0.52 1.17 2.72 2.75 2.94
2 0.43 0.53 1.48 2.85 2.83
3 0.47 0.59 1.58 3.14
4 0.49 0.80
我转换数据框使用df.values到NumPy的然后将其传递给boxplot。
当我尝试从此熊猫数据框中创建箱图时,从每列中选取的值的数量限制为列中最少的值(在本例中为F列)。有没有什么方法可以将每列中的所有值打印出来?
注意:我使用df.dropna删除每列中缺少值的行。但是,这会将数据框重新调整为列长度的最小公分母,并搞乱了绘图。
import prettyplotlib as ppl
import numpy as np
import pandas
import matplotlib as mpl
from matplotlib import pyplot
df = pandas.DataFrame.from_csv(csv_data,index_col=False)
df = df.dropna()
labels = ['A', 'B', 'C', 'D', 'E', 'F']
fig, ax = pyplot.subplots()
ppl.boxplot(ax, df.values, xticklabels=labels)
pyplot.show()
你应该张贴的numpy的/大熊猫代码 – mrKelley
添加的代码。好吧,我看到发生了什么。我使用df.dropna删除每列中缺少值的行。但是,这会将数据框重新调整为列长度的最小公分母,并搞乱了绘图。任何解决方案 – user308827
如何不放弃NaN?我认为'boxplot'会自己处理NaN值。 – HYRY