如果标志为“1”,将数据转换为NaN的最快方法是什么?
有数据帧表示数据和标志。 这些帧有数百列和50万条记录。
df
S_1 S_2 ... S_n
2016-01-01 00:00 5.6 0.4 ... 6.7
2016-01-01 00:00 5.5 0.2 ... 6.6
2016-01-01 00:00 5.0 0.2 ... 6.7
....
2016-12-31 23:57 5.4 0.3 ... 6.7
2016-12-31 23:58 5.9 0.3 ... 6.8
2016-12-31 23:59 5.1 0.4 ... 7.0
flag_table
S_1 S_2 ... S_n
2016-01-01 00:00 0 0 ... 1
2016-01-01 00:00 0 0 ... 0
2016-01-01 00:00 1 0 ... 0
....
2016-12-31 23:57 1 0 ... 0
2016-12-31 23:58 1 0 ... 1
2016-12-31 23:59 1 0 ... 0
这是我想要的表格:
df
S_1 S_2 ... S_n
2016-01-01 00:00 5.6 0.4 ... NaN
2016-01-01 00:00 5.5 0.2 ... 6.6
2016-01-01 00:00 NaN 0.2 ... 6.7
....
2016-12-31 23:57 NaN 0.3 ... 6.7
2016-12-31 23:58 NaN 0.3 ... NaN
2016-12-31 23:59 NaN 0.4 ... 7.0
答案 0 :(得分:3)
df.values[flag_table > 0] = np.nan