我想要一个空值的 if 条件。您可以在下面看到我的变量“endAt”,它是一个日期时间变量。但是,它有一些空白值,其值为“NaT”。现在我想为这些空值创建一个条件。但我不知道如何引用它们。我尝试过以下方法:
1. if(df.iloc[i]['endedAt'] == 'NaT'):
2. if(df.iloc[i]['endedAt'] == ''):
但是它们都不起作用,并且 if 语句中的内容没有被执行。
示例数据:
结束时间
NaT
2018-11-20 01:10:43
2018-11-19 20:21:57
2018-11-19 20:06:23
2018-11-19 04:05:36
最佳答案
您可以使用pd.Nat
,例如if df.iloc[i]['endAt'] is pd.NaT:
:
import pandas as pd
dt = pd.to_datetime([
None,
pd.Timestamp("2018-11-20 01:10:43"),
pd.Timestamp("2018-11-19 20:21:57"),
pd.Timestamp("2018-11-19 20:06:23"),
pd.Timestamp("2018-11-19 04:05:36"),
])
df = pd.DataFrame({"endedAt": dt})
print(df)
for i in range(len(df)):
if df.iloc[i]['endedAt'] is pd.NaT:
print("\nNaT row index:", i)
输出:
endedAt
0 NaT
1 2018-11-20 01:10:43
2 2018-11-19 20:21:57
3 2018-11-19 20:06:23
4 2018-11-19 04:05:36
NaT row index: 0
关于python - 日期时间变量为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59174238/