gpt4 book ai didi

python - 带有 NaT 的 Pandas 条件语句

转载 作者:行者123 更新时间:2023-11-28 22:30:20 24 4
gpt4 key购买 nike

所以,我有一个包含许多变量的数据框。索引是uid,其他变量都是日期。

我试图在某个值为 NaT 时创建标志变量,但我找不到正确的语句。

我想要这样的东西:

auxData['flagInvited'] = np.where(auxData['invited'] == NaT, 0, 1)

我怎样才能轻松做到这一点?

最佳答案

我想你需要notnull用于转换为 boolean mask 然后转换为 int - True1False0:

auxData['flagInvited'] = auxData['invited'].notnull().astype(int)

示例:

auxData = pd.DataFrame({'invited':[np.nan, '2017-01-01','2017-03-03']})
auxData.invited = pd.to_datetime(auxData.invited, dayfirst=True)
print (auxData)
invited
0 NaT
1 2017-01-01
2 2017-03-03

print (auxData['invited'].notnull())
0 False
1 True
2 True
Name: invited, dtype: bool

auxData['flagInvited'] = auxData['invited'].notnull().astype(int)
print (auxData)
invited flagInvited
0 NaT 0
1 2017-01-01 1
2 2017-03-03 1

关于python - 带有 NaT 的 Pandas 条件语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42328093/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com