Bra*_*wed 3 python timestamp for-loop pandas
我试图比较在哪个索引中,一个 dataframe1 中的 timedelta 值等于另一个 dataframe2 中的 timedelta 值,然后修剪具有更多值的数据帧,使它们同时开始:
数据集 1:
TimeStamp Col1 ... Col2500
0 days 10:37:34 346 ... 635
0 days 10:38:34 124 ... 546
0 days 10:39:34 346 ... 745
Run Code Online (Sandbox Code Playgroud)
数据集2:
TimeStamp Col1 ... Col50
0 days 10:25:20 123 ... 789
0 days 10:25:45 183 ... 787
...
...
0 days 10:37:40 223 ... 789
for i in df2.index:
if str(df1.index[0])[7:12] == str(df2.index[i])[7:12]:
index_value = i
break
df2 = df2.drop(df2.index[[0,i-1]])
Run Code Online (Sandbox Code Playgroud)
预期输出将是 Dataset2 与 Dataset1 同时开始(最接近分钟)
您可以将searchsorted索引用于第一个更高的值,df2.index例如 的第一个值df1.index。然后df2按位置选择第二个iloc:
#necessary both indices are sorted
df1 = df1.sort_index()
df2 = df2.sort_index()
a = df2.index.searchsorted(df1.index[0])
print (a)
2
df2 = df2.iloc[a:]
print (df2)
Col1 ... Col50
TimeStamp
10:37:40 223 ... 789
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7104 次 |
| 最近记录: |