Python 如何正确地将基于向量的函数应用于数据帧列?
我试图应用一个函数,该函数以特定的格式返回特定的日期,但是我很难将此函数应用于新的数据帧列 以下是我目前得到的信息:Python 如何正确地将基于向量的函数应用于数据帧列?,python,pandas,dataframe,datetime,lambda,Python,Pandas,Dataframe,Datetime,Lambda,我试图应用一个函数,该函数以特定的格式返回特定的日期,但是我很难将此函数应用于新的数据帧列 以下是我目前得到的信息: import pandas as pd import datetime actual_date = datetime.now() actual_date = datetime.strptime("{}/{}/{}".format('01', actual_date.month, actual_date.year), "%d/%m/%Y")
import pandas as pd
import datetime
actual_date = datetime.now()
actual_date = datetime.strptime("{}/{}/{}".format('01', actual_date.month, actual_date.year), "%d/%m/%Y")
def set_date(actual_date):
result = actual_date - dateutil.relativedelta.relativedelta(months=1)
print(datetime.strftime(result, "%d/%m/%Y"))
df['date'] = df.apply(lambda x: set_date(x[actual_date]), axis=1)
出现下一个错误:
KeyError:datetime.datetime(2021,2,1,0,0)
预期输出可以是一个数据帧列,其中行值为set\u date
output
如何完成此任务?问题与
lambda的x
设置有关:
df['date']= df.apply(lambda x: set_date(actual_date), axis=1)
我怀疑它遗漏了lambda函数的目标列
df['date']= df['date'].apply(lambda x: set_date(actual_date), axis=1)