Python 熊猫数据帧在各自的datetime时间戳索引的并集上重新索引
我有两个数据帧。每个数据帧中有两个相同的列。我可以很好地绘制它,日期时间正确地显示为x轴上的索引 dfEURUSD的索引Python 熊猫数据帧在各自的datetime时间戳索引的并集上重新索引,python,pandas,time-series,Python,Pandas,Time Series,我有两个数据帧。每个数据帧中有两个相同的列。我可以很好地绘制它,日期时间正确地显示为x轴上的索引 dfEURUSD的索引“时间戳”与dfGBPUSD的数据帧不同。我试图使它们的长度相同,并对丢失的数据重新采样,使两个时间序列的长度相同。但我遇到了麻烦: def union(a, b): """ return the union of two lists """ return list(set(a) | set(b)) print(len(dfEURUSD.index)) pr
“时间戳”
与dfGBPUSD的数据帧不同。我试图使它们的长度相同,并对丢失的数据重新采样,使两个时间序列的长度相同。但我遇到了麻烦:
def union(a, b):
""" return the union of two lists """
return list(set(a) | set(b))
print(len(dfEURUSD.index))
print(len(dfGBPUSD.index))
newindex = union(dfEURUSD.index, dfGBPUSD.index)
newindex = sorted(set(newindex))
print(len(newindex))
print(newindex)
这就产生了这个输出
151527
113903
264664
[Timestamp('2015-11-12 17:49:15.512000'), Timestamp('2015-11-12 17:49:15.523000'), Timestamp('2015-11-12 17:49:15.540000'), Timestamp('2015-11-12 17:49:15.727000'), Timestamp('2015-11-12 17:49:16.059000'), Timestamp('2015-11-12 17:49:16.301000'), etc...
如果我尝试用
dfEURUSD.reindex(newindex, method='ffill')
dfGBPUSD.reindex(newindex, method='ffill')
给出错误:
File "/home/idf/anaconda3/lib/python3.5/site-packages/pandas/core/index.py", line 2133, in reindex
raise ValueError("cannot reindex a non-unique index "
ValueError: cannot reindex a non-unique index with a method or limit
不确定我做错了什么?我认为问题在于索引中的重复性-您可以通过
newindex.index.get_duplicates()
检查它,谢谢。这确实有帮助。