要使用多行和多列作为输入对DataFrame列应用函数,可以使用apply()
函数结合axis
参数。
首先,创建一个示例DataFrame:
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3, 4], 'B': [5, 6, 7, 8], 'C': [9, 10, 11, 12]})
接下来,定义一个需要应用于列的函数:
def my_function(row):
return row['A'] + row['B'] + row['C']
然后,使用apply()
函数将函数应用于每列:
df['D'] = df.apply(my_function, axis=1)
上述代码中的axis=1
表示将函数应用于每行。此时,新的列'D'将被添加到DataFrame中,其值为每行的'A'、'B'和'C'列相加的结果。
如果要同时应用于多个列,可以修改函数,接受多个参数:
def my_function(row, col1, col2):
return row[col1] + row[col2]
然后,将apply()
函数中的参数进行传递:
df['D'] = df.apply(my_function, args=('A', 'B'), axis=1)
在这个例子中,新的列'D'将由'A'和'B'列的值相加而得。
总结起来,使用多行和多列作为输入对DataFrame列应用函数,可以按照以下步骤进行:
apply()
函数将函数应用于每列,并指定axis=1
。apply()
函数中传递。推荐的腾讯云相关产品:无
希望以上解答能够满足您的需求,如果您还有其他问题,请随时提问。
领取专属 10元无门槛券
手把手带您无忧上云