【发布时间】:2020-08-29 02:52:45
【问题描述】:
我有两列这样的数据框(以日期为索引):
我的目标是像这样(使用 excel)用 seaborn 绘制条形图:
我关注了这里的讨论: enter link description here
我知道我必须使用 melt 。但是当我输入以下代码时,结果是索引(日期)消失(被数字替换)并且数据框结构改变如下:
# pd.melt(df, id_vars=['A'], value_vars=['B'])
premier_melt = pd.melt(final_mada_df,id_vars=["Confirmed"],value_vars = ["Recovered"])
我们怎样才能解决这种问题来正确地用seaborn绘制条形图
提前致谢
我按照以下建议将代码放在下面:
# main dataframe
df2
Recovered Confirmed
3/20/20 0 3
3/21/20 0 0
3/22/20 0 0
3/23/20 0 9
df2.stack()
出来:
3/20/20 Recovered 0
Confirmed 3
3/21/20 Recovered 0
Confirmed 0
3/22/20 Recovered 0
..
5/4/20 Confirmed 0
5/5/20 Recovered 2
Confirmed 2
5/6/20 Recovered 0
Confirmed 7
Length: 96, dtype: int64
df2.rename(columns={'level_1':'Status',0:'Values'})
出来:
Recovered Confirmed
3/20/20 0 3
3/21/20 0 0
3/22/20 0 0
3/23/20 0 9
3/24/20 0 5
但是当我输入以下代码时,出现错误:
# plot
ax = sns.barplot(x=df2.index,y='Values',data=df2,hue='Status')
ValueError: Could not interpret input 'Values'
【问题讨论】: