gpt4 book ai didi

pandas - 使用 for 循环迭代 pandas 数据框中的日期范围

转载 作者:太空宇宙 更新时间:2023-11-04 09:29:31 29 4
gpt4 key购买 nike

我正在尝试遍历数据帧每一行中的时间戳,以查看该时间戳是在特定日期之前还是之后。此外,我想在数据框中创建一个新列,指定日期是在指定日期之前还是之后。

这是我正在使用的代码:

df['created_at'] = pd.to_datetime(df['created_at'], errors='coerce')

for row in df.iterrows():
if df[(df['created_at'] >= '2019-03-15')]:
df['within_date_range'] = "True"
else:
df['within_date_range'] = "False"

但是,上面的代码给我这个错误:

ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

如有任何说明,我们将不胜感激。

最佳答案

如评论中所述,您真的不需要循环。但是回答你的确切问题,你的错误来源是这个表达式:if df[(df['created_at'] >= '2019-03-15')]:

实际上,操作df[some_condition_here]返回给你一个新的DataFrame,不清楚如何将DataFrame转换为boolean(它也适用于任何类:dog = new Dog() 实例是真还是假?)

这就是您收到错误的原因。

关于pandas - 使用 for 循环迭代 pandas 数据框中的日期范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56245138/

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