我有一个像这样的简单数据框:
d1={'a':{'1998-01-01':10}}
d2={'b':{'1998-01-01':3}}
df=pd.DataFrame.from_dict(d1)
df=df.append(pd.DataFrame.from_dict(d2))
df.index=pd.to_datetime(df.index)
a b
1998-01-01 10 NaN
1998-01-01 NaN 3
Run Code Online (Sandbox Code Playgroud)
我想拥有
a b
1998-01-01 10 3
Run Code Online (Sandbox Code Playgroud)
自1998年1月1日以来共享索引
或者,您可以groupby通过index其他方式使用-与参数level=0一起使用sum:
print df.groupby(level=0).sum()
a b
1998-01-01 10 3
Run Code Online (Sandbox Code Playgroud)
或更好:
print df.sum(level=0)
Run Code Online (Sandbox Code Playgroud)
或者你可以尝试这个(使用你的原始数据框):
print(df)
print(df.groupby(df.index).sum())
Run Code Online (Sandbox Code Playgroud)
输出:
a b
1998-01-01 10 NaN
1998-01-01 NaN 3
a b
1998-01-01 10 3
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3438 次 |
| 最近记录: |