gpt4 book ai didi

python - 尝试比较 Python pandas dataframe 中的日期时出现错误

转载 作者:行者123 更新时间:2023-12-01 06:28:00 26 4
gpt4 key购买 nike

我正在尝试迭代 .csv 文件中的行,并在满足某些条件时执行一些计算。

这是我的代码示例:

我确保使用“parse_dates”来识别日期列

df = pd.read_csv('.csv file', parse_dates = ['Columns containing dates']

for index, row in df.iterrows():
Flag = (df['Date 1'] - df['Date 2']).dt.days
while Flag > 0 and df['Balance'] > 0:
do something

删除 while 循环并打印 Flag 会生成数据类型为 int64 的数字行。

添加 while 循环,我得到:

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

我不明白......有人能指出我正确的方向吗?另外,我并不是尝试修改数据框,而只是读取 .csv,从中提取信息以执行计算,然后输出到新文件。

最佳答案

代码中的变量Flag是一个pandas Series。您无法使用 Flag>0 对其进行评估。

该错误显示了 pandas Series 上允许的操作,即 .empty()、.bool() 等

当您打印Flag 的值时,它会打印它包含的Series。您需要迭代 Series 中的元素,然后根据需要检查比较。

我不确定您是否想在这里进行比较,但下面的文档可能会让您轻松进行比较:

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.html

关于python - 尝试比较 Python pandas dataframe 中的日期时出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60032608/

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