猿问

如何将 DataFrame 与多索引合并

我想创建一个基于日期和时间的多索引DataFrame - df. 

这实际上有效并indexed返回正确的多索引(从 02/10/2017 到 31/03/2018 的连续日期,从 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


POPMUISE
浏览 245回答 1
1回答
随时随地看视频慕课网APP

相关分类

Python
我要回答