我有一些注册速度(V1,V2,V3,MaxV或最大速度)的数据帧以及每个速度相应的时间戳(T1,T2,T3,MaxV_T或最大速度的时刻)如下:
df
Event T1 V1 T2 V2 T3 V3 MaxV MaxV_T
0 12:40:44 42.86 12:40:43 45.65 12:40:39 50.5 50.5 T3
1 15:28:15 88.75 15:28:14 86.45 15:28:17 84.56 88.75 T1
MaxV_T 列中的点并不表示实际值,而是表示实际值所在列的标题。
我需要在 python 中做的是将这个值替换为真实时间戳,如下所示
df
Event T1 V1 T2 V2 T3 V3 MaxV MaxV_T
0 12:40:44 42.86 12:40:43 45.65 12:40:39 50.5 50.5 12:40:39
1 15:28:15 88.75 15:28:14 86.45 15:28:17 84.56 88.75 15:28:15
更新
如果位置指示不可用,因此我没有初始 MaxV_T
列,并且我需要返回每个速度相应的时间值,该怎么办?
最佳答案
使用查找
df.assign(MaxV_T=df.lookup(df.index, df.MaxV_T))
Event T1 V1 T2 V2 T3 V3 MaxV MaxV_T
0 0 12:40:44 42.86 12:40:43 45.65 12:40:39 50.50 50.50 12:40:39
1 1 15:28:15 88.75 15:28:14 86.45 15:28:17 84.56 88.75 15:28:15
关于python - Vlookup 用 python 数据框中每行的值替换列索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43984089/