Python-按日期范围填充NaN

Python-按日期范围填充NaN,python,Python,我有一个数据帧,当: 其中一个列是日期列 另一列是X列,该列缺少值 我想用特定的日期范围填充X列 到目前为止,我得到了以下代码: df[df['Date'] < datetime.date(2017,1,1)]['X'].fillna(1,inplace=True) df[df['Date']

我有一个数据帧,当:

  • 其中一个列是日期列
  • 另一列是X列,该列缺少值
我想用特定的日期范围填充X列

到目前为止,我得到了以下代码:

df[df['Date'] < datetime.date(2017,1,1)]['X'].fillna(1,inplace=True)
df[df['Date']
但它不起作用,我没有得到一个错误,但数据没有填写。 还有一点看起来很混乱,也许有更好的方法


感谢您的帮助。

首先,您需要创建数据框:

将熊猫作为pd导入
df=pd.DataFrame({'Date':['2016-01-01','2018-01-01']})
df['Date']=pd.to_datetime(df['Date'])
接下来,您可以有条件地设置列值:

df.loc[df['Date']<'2017-01-01','X']=1
结果如下:

    Date        X
0   2016-01-01  1.0
1   2018-01-01  NaN

什么是“不工作”?您能展示DF的一个示例吗?请尝试
DF.loc[DF['Date']
检查。