首页 > 解决方案 > 将数据框转换为 Pandas 系列

问题描述

如何将数据框转换为 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()

标签: pythonpandasplot

解决方案


您无需更改有关数据框的任何内容,只需根据您的值列索引数据框并绘制它。

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

在此处输入图像描述


推荐阅读