我有一些数据,我想从中提取收入的时间序列(和
Dollars
在不同的日期
Day
在不同的地点
Where
)对于不同的产品(
x
和
y
)
import pandas as pd
#Create data
data = {'Day': [1,1,2,2,3,3],
'Where': ['A','B','A','B','B','B'],
'What': ['x','y','x','x','x','y'],
'Dollars': [100,200,100,100,100,200]}
index = range(len(data['Day']))
columns = ['Day','Where','What','Dollars']
df = pd.DataFrame(data, index=index, columns=columns)
df
为此,我将数据分组
天
和
What
求和
美元
:
#Group by Day and What and sum Dollars (for each Where)
print(df.groupby(['Day', 'What'])['Dollars'].sum())
现在,我想为
X
和
Y
像这样:
我尝试了以下方法,但显然不起作用:
items = df.What.unique()
ax = plt.figure()
for item in items:
df_tmp = df[['Day']][df.What == item]
plt.plot(df_tmp['Day'],df_tmp,'.-',label=item)
有人能帮我找到正确的方向吗?
有没有更快的方法达到正确的结果?