python - 将函数应用于数据框列

标签 python pandas function dataframe apply

我有数据框x,

Please view the x dataframe here

我们希望使用以下函数创建新列,该函数将在开始处添加完整列值并创建新列结束。

import datetime
def date_by_adding_business_days(from_date, add_days):
    business_days_to_add = add_days
    current_date = from_date
    while business_days_to_add > 0:
        current_date += datetime.timedelta(days=1)
        weekday = current_date.weekday()
        if weekday >= 5: # sunday = 6
            continue
        business_days_to_add -= 1
    return current_date

我已经尝试过这个错误,请帮忙。

x['Finish'] = x.apply(date_by_adding_business_days(datetime.date.today(), x['Complete']))

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

最佳答案

尝试重构您的代码。如果您仅将函数应用于一列,那么您就做错了。此外,由于某种原因,您尝试调用向其传递时间的函数。为什么如果你可以在函数中得到它:

import datetime
def date_by_adding_business_days(add_days):
    business_days_to_add = add_days
    current_date = datetime.date.today()
    while business_days_to_add > 0:
        current_date += datetime.timedelta(days=1)
        weekday = current_date.weekday()
        if weekday >= 5: # sunday = 6
            continue
        business_days_to_add -= 1
    return current_date

x['Finish'] = x['Complete'].apply(date_by_adding_business_days)

关于python - 将函数应用于数据框列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61652558/

相关文章:

python - 列表切片中的快速成员资格

Python 3 移植问题,说需要类字节对象?

python - 检查 python panda 中的列值

python - 保存大 xlsx 文件 pandas python

Pandas - 按工作日过滤数据

javascript - 从javascript中的函数更新全局变量

python - 获取一个复杂的 if 语句来处理数组? Python

python - Python 中是否有相当于 SQL Age() 的函数?

python - 使用selenium(python)抓取网页

c - switch case 循环中的函数