python - 日期时间变量为空

标签 python pandas loops datetime type-conversion

我想要一个空值的 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/

相关文章:

python - 将 Python 结果导出到 CSV

python - 使用 df.apply 返回满足条件的行数

python - numpy中楼层划分的奇怪结果

python - 使用 pytest.ini 进行记录。如何附加到文件?

python - 使用 ix 或 iloc 检查 pandas DataFrame 中的特定值(在单元格中)是否为 NaN 不工作

html - 有没有办法捕获多个复选框并选择框项目?

python - 如何将 python 脚本分成几部分并循环导入这些部分?

c# - 使用数组进行统计(十进制)

python - 在单个 session 中从 python 运行 bash 命令

python - 如何从可能的字符串列表中替换 python 中的字符串