我有一个 pandas 数据框,如下所示:
val_1 val_2 Flag
Date
2018-08-27 221.0 121.0 0
2018-08-28 222.0 122.0 1
2018-08-29 223.0 123.0 0
2018-08-30 224.0 124.0 2
2018-08-31 225.0 125.0 0
Run Code Online (Sandbox Code Playgroud)
我想根据标志条件将标志列值更改为与其他列相同的值。即,如果 Flag 为 1,则将 1 替换为同一行中的 val_1;如果 Flag 为 2,则将其替换为 val_2。我正在寻找的输出如下所示:
val_1 val_2 Flag
Date
2018-08-27 221.0 121.0 0
2018-08-28 222.0 122.0 222.0
2018-08-29 223.0 123.0 0
2018-08-30 224.0 124.0 124.0
2018-08-31 225.0 125.0 0
Run Code Online (Sandbox Code Playgroud)
我知道我可以.loc这样使用df.loc[df['Flag'] == 1, ['Flag']] =。我不知道代码右侧是什么。
我有一个字典,看起来像这样:
{'A': ([ 0. , 1.0 , 2.0, 3.0, 0. , 0. , 0. , 0. , 0. ]),
'B': ([ 0. , 4.0, 5.0 , 6.0, 0. , 0. , 0. , 0. , 0. ]),
.
.
.
'Y': ([ 0. , 7.0, 8.0 , 9.0, 0. , 0. , 0. , 0. , 0. ]),
'Z': ([ 0. , 10.0, 20.0, 30.0, 0. , 0. , 0. , 0. , 0. ])}
Run Code Online (Sandbox Code Playgroud)
我想总结第2,第3和第4个元素并创建一个如下所示的新字典:
{'A': ([6.0]),
'B': ([15.0]), …Run Code Online (Sandbox Code Playgroud) 我有一个 pandas 数据框,如下所示:
Date and Time Seconds Pressure (mmHg) Temperature (C)
0 2021-05-13 13:00:00 0.000 709.719 26.551
1 2021-05-13 14:00:00 3600.001 709.364 25.966
2 2021-05-13 15:00:00 7200.001 708.698 25.331
3 2021-05-13 16:00:00 10800.001 707.689 25.184
4 2021-05-13 17:00:00 14400.001 707.206 25.184
Run Code Online (Sandbox Code Playgroud)
压力和温度数据原本应以 15 分钟为间隔,但传感器设置错误,并且每小时收集一次数据。假设线性插值,如何将数据时间戳扩展到 15 分钟间隔并通过线性插值填充小时之间的缺失数据?我尝试了此处建议的解决方案,但我的文件很大而且数量很多。这个解决方案不是很快。