将数据框转换为Pandas系列系列

时间:2018-07-17 16:05:32

标签: python pandas plot

如何将数据框转换为Pandas系列序列。 我的数据框在下面,我希望它以堆积的条形图进行绘制。

    city  soru_id value1 value2 value3 value4 value5
0      1        2    147    119     69     92    106
1      2        2     31     20     12     14     26
2      3        2     37     22     24     18     19
3      4        2     10     13      7     13     10
4      5        2     38     48     18     30     27
5      6        2    401    409    168    354    338
..   ...      ...    ...    ...    ...    ...    ...
76    77        2     12      7      3     12      8
77    78        2      4      2      1     12      3
78    79        2      3   None      1   None   None
79    80        2     12      7      4      4      7
80    81        2     18     13      7     10      2

[81 rows x 7 columns]

因此,我需要将数据框转换为如下所示的形式以进行绘制。我无法循环进入DataFrame()方法。我该如何绘制。

df = pd.DataFrame([pd.Series([value1,value2,value3,value4,value5]), 
        pd.Series([value1,value2,value3,value4,value5]), 
        pd.Series([value1,value2,value3,value4,value5]),
        ..................................
        ..................................
        pd.Series([value1,value2,value3,value4,value5]),
        pd.Series([value1,value2,value3,value4,value5])
        ], index=[index0,index2,index3,....,index79,index80])

df.plot.bar(stacked=True)
plt.show()

1 个答案:

答案 0 :(得分:1)

您无需更改有关数据框的任何内容,只需根据您的值列为数据框建立索引并对其进行绘制即可。

cols = [col for col in df.columns if col.startswith('value')]
df[cols].plot.bar(stacked=True)
plt.show()

enter image description here