python - 检查日期时间索引值

标签 python pandas

从来没有弄清楚这个。

数据帧中的日期时间索引由 df.loc['2022-07-18 15:15:00'] 或 iloc 或其他方式选择,但如何对时间执行条件检查 在日期时间中创建特定时间的列值? 即

if index.time = '***16:00:00':
  df['end'] = True

我也不知道如何在这种情况下使用通配符。

最佳答案

假设有一个日期时间索引,您可以使用:

df['end'] = df.index == '16:00:00'  # also works with '16:00'

示例输出:

                     col    end
2022-07-20 04:52:06    0  False
2022-07-20 10:16:24    1  False
2022-07-20 10:41:42    2  False
2022-07-20 16:00:00    3   True
2022-07-20 19:07:42    4  False

可重现的输入:

from pandas import Timestamp
df = pd.DataFrame({'col': {Timestamp('2022-07-20 04:52:06'): 0,
                           Timestamp('2022-07-20 10:16:24'): 1,
                           Timestamp('2022-07-20 10:41:42'): 2,
                           Timestamp('2022-07-20 16:00:00'): 3,
                           Timestamp('2022-07-20 19:07:42'): 4}})

关于python - 检查日期时间索引值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73045375/

相关文章:

python - 在 Flask 框架中自动发送电子邮件

python - 错误: Could not find a version that satisfies the requirement deepcorrect (from versions: none)

python - 根据另一个数据集中的元素位置过滤 pandas 数据帧的快速方法

python - 如何将一个系列的值与另一个系列的值逐个比较

python - Pandas 多索引计数出现次数

python - 将 DataFrame 分类值 reshape 为行

python - 使用 for 循环迭代文本文件中的各个单词

python - 在 Django 模型中发送和接收信号

python - 责任链设计模式是否适合在硬件组件上运行的 Python 解决方案

python - 检查 pandas 数据框中一行中的元素是否为 NaN 然后替换它