我有以下Data_Frame (这是如何打印数据帧的):
Year Month incomes expenses balance
X
2022-1 2022 1 24037.25 22922.10 1115.15
2022-2 2022 2 25348.23 19150.95 6197.28我想把最后三栏作为前两栏的一个函数,即年份和月份。到目前为止,堆栈溢出的所有答案都没有产生正确的情节。
有什么帮助吗?
发布于 2022-03-03 17:31:58
问题更新后更新。假设这3列是数字列:
df[['incomes', 'expenses', 'balance']].plot.bar()输出:

发布于 2022-03-04 21:02:09
我遇到的问题是,表面上的数字列实际上是“objects”类型。将这些转换为“浮动”解决了问题,并产生了正确的情节。
以下是代码:
df_joined['X'] = df_joined['Year'].astype(str) + '-' + df_joined['Month'].astype(str)
df_joined.set_index('X', inplace=True)
print(df_joined.dtypes)
df_joined['incomes']=df_joined['incomes'].astype(float)
df_joined['expenses']=df_joined['expenses'].astype(float)
df_joined['balance']=df_joined['balance'].astype(float)
print(df_joined.dtypes)
df_joined[['incomes', 'expenses', 'balance']].plot.bar()
plt.show()生成下列打印输出:
Year int64
Month int64
incomes object
expenses object
balance object
dtype: object
Year int64
Month int64
incomes float64
expenses float64
balance float64
dtype: object并产生以下情节:

https://stackoverflow.com/questions/71340761
复制相似问题