我正在尝试使用以下代码连接100个具有2个datetime索引的数据帧:
concat_df = pd.concat([df_dict[c] for c in df_dict], axis = 1)
但是某个数据帧(我假设它是一个,但它可能是更多)导致以下异常发生:
Exception: cannot handle a non-unique multi-index!
知道为什么吗?
是指向第一个索引还是第二个索引?
我发现它指的是第一个索引我的解决方案是:(认为不确定它是多么有效,但concat工作之后)
dup_first_index_dates = np.where(np.array([np.sum(df_dict[c].index.duplicated()) for c in df_dict]) == 1)[0]
key = df_dict.keys()
for i in dup_first_index_dates :
df_dict[key[i]] = df_dict[tickers[i]].reset_index().drop_duplicates('Level1').set_index(['Level1', 'Level2'])
可能concat
中的ignore_index=True
有帮助。
不确定是否可以这样使用:
concat_df = pd.concat([df_dict[c] for c in df_dict], axis = 1,ignore_index=True)
尝试!