我想创建一个基于日期和时间的多索引从我的
DataFrame - df.
这确实有效而且
indexed
返回正确的多索引(连续日期从2017年10月2日到2018年3月31日,连续时间从08:00:00到21:55:00,间隔5分钟)。
问题是我的数据集没有完整的观察结果。意味着,对于一个随机的一天,08:05:00到08:40:00之间可能会有缺失的观测值。我的Multiindex的长度是20496,而DataFrame的长度是20486。
DataFrame
所有观察结果均为
NAN
DataFrame - df
?
df = pd.read_csv(file_name, parse_dates=[0],
index_col=0, sep=',')
df['Date'] = df.index.date
df['Time'] = df.index.time
df['Time'] = df['Time'].astype(str)
df = df[df['Time'] != '22:00:00']
list_date = set(df['Date'])
list_time = set(df['Time'])
list_date = sorted(list_date)
list_time = sorted(list_time)
iterables = [list_date, list_time]
indexed = pd.MultiIndex.from_product(iterables,
names=['date', 'time'])
df_new = pd.DataFrame(df, index=indexed)
df
输出:
r2 var_v2x Date Time
TIME1
2017-10-02 08:00:00 NaN 0.00008784 2017-10-02 08:00:00
2017-10-02 08:05:00 0.00000000 0.00008784 2017-10-02 08:05:00
2017-10-02 08:10:00 0.00000008 0.00008784 2017-10-02 08:10:00