问题描述
我正在尝试绘制 df,但我总是发现错误:KeyError: 'value'
我已经尝试将值定义为 .set_index(''),也尝试了其他列,尝试在尝试绘图之前定义 xlabel 和 ylabel,但我从未有过与此不同的结果。
我的想法是 'years' 是 xlabel,而 ylabel 是每一列的值。
df = pd.read_csv(r'C:\Users\Gustavo\Desktop\Industrial\dados_agregados1.csv',sep = ';',header = 0)
df2 = df.T
df2.head(1)
打印(类型(df2))
df2.plot(x = '年')
谢谢大家
解决方法
我认为您应该将第一行设置为列
a
,
在图像中可以看到的问题是您将列名(由于转置)与实际值混合在一起(意思是,以“Years”开头的行被视为数据而不是标题)。
解决方案是执行以下操作(完整示例仅选择您需要的内容):
import pandas as pd
df = pd.DataFrame(data= {'col1':["CompanyABC",1000,1200],'col2': ["CompanyXYZ",333,222]},index=["Years",2002,2003])
# From here would apply to you
df.columns = df.iloc[0]
df_new = df.drop('Years')
df_new.plot.bar()