我想按类型对数据集进行每日细分。没有每种类型的每一天的记录,它们不存在的地方我想要 NaN。
我能够得到一个“重新采样到每日”的结果,但是类型被省略了。
下面的代码应该是一个完整的示例(好吧,除了最后的已知错误!):
import pandas as pd
import datetime as dt
df = pd.DataFrame({
'Date': [dt.datetime(2021,1,1), dt.datetime(2021, 1, 3), dt.datetime(2020,1,2)],
'Type': ['A', 'A', 'B'],
'Value': [1,2,3]
})
df.set_index('Date', inplace=True)
# this loses the 'type'
print(df.resample('1D').mean())
df = df.reset_index().set_index(['Date', 'Type'])
# this raises an exception "TypeError: Only valid with DatetimeIndex, TimedeltaIndex or PeriodIndex, but got an instance of 'MultiIndex'"
print(df.resample('1D').mean())
我正在寻找的输出是每天/类型组合的一行:
日期 | 类型 | 价值 |
---|---|---|
20210101 | 一个 | 1 |
20210102 | 一个 | 钠 |
20210103 | 一个 | 2 |
20210101 | 乙 | 钠 |
20210102 | 乙 | 3 |
20210103 | 乙 | 钠 |
感激地收到任何建议或指示。