给出一个像这样的pandas数据框:
A
year
2018-01-01 10
2018-01-02 15
2018-01-03 10
2018-01-04 19
2018-01-05 30
2018-01-06 23
2018-01-07 10
2018-01-08 56
2018-01-09 20
2018-01-10 10
如何从索引等于某个值的位置开始设置A
到NaN
的值,例如2018-01-07
:
A
year
2018-01-01 10
2018-01-02 15
2018-01-03 10
2018-01-04 19
2018-01-05 30
2018-01-06 23
2018-01-07 NaN
2018-01-08 NaN
2018-01-09 NaN
2018-01-10 NaN
答案 0 :(得分:0)
使用
In [851]: df.loc['2018-01-07':] = np.nan
In [852]: df
Out[852]:
A
year
2018-01-01 10.0
2018-01-02 15.0
2018-01-03 10.0
2018-01-04 19.0
2018-01-05 30.0
2018-01-06 23.0
2018-01-07 NaN
2018-01-08 NaN
2018-01-09 NaN
2018-01-10 NaN
答案 1 :(得分:0)
下面的代码为您提供了所需的结果:
import numpy as np
df.set_index("d", inplace=True)
df['A'].loc['2015-01-08':]=np.nan
A
d
2015-01-01 0.0
2015-01-02 1.0
2015-01-03 2.0
2015-01-04 3.0
2015-01-05 4.0
2015-01-06 5.0
2015-01-07 6.0
2015-01-08 NaN
2015-01-09 NaN
2015-01-10 NaN
如果这是你想要的,请选择答案。
由于