如何在 Python 中应用 IF 和 ELSEIF 语句?

How do I apply an IF and ELSEIF statement in Python?

我在名为 df 的数据框中有一个名为 date1 的日期字段和一个名为 weekday 的工作日字段。我正在尝试创建另一个字段,如果工作日是某个值,则添加一年,否则添加一天。它出现了一个错误:

ValueError:Series 的真值不明确。使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()。

所以我添加了 .any() 并且它运行了但是所有值都增加了 365 天。

if df['weekday'].any() < 6:
    df['date1'] = df['date'] + timedelta(365)
elif df['weekday'].any() == 6:
    df['date1'] = df['date'] + timedelta(1)
else:
    df['date1'] = datetime.today()

我正在学习 python 并在此处广泛搜索问答,因此非常感谢指导。谢谢

当您将系列与一个元素进行比较时,会出现此错误。试试这个方法-

for i, value in enumerate(df['weekday']):
    if value < 6:
        df['date1'][i] = df['date'][i] + timedelta(365)
    elif value == 6:
        df['date1'][i] = df['date'][i] + timedelta(1)
    else:
        df['date1'][i] = datetime.today()

希望对您有所帮助。