首页 > 解决方案 > 在使用点表示法的函数中包含列名作为参数

问题描述

我想包含列名作为此函数的可接受参数,以使其更灵活。

def func(df, column):
    return df.column.str.split('', n = 5, expand=True)

正如所料,func(my_df, columnX)正在返回一个NameError: name 'columnX' is not defined.

有解决方法吗?

标签: pythonpandas

解决方案


您可以像访问字典字段一样访问您的列。另一个建议是不要将对象命名为类名(替换DataFramedf)。最后,您需要返回获得的对象。

def func(df, column):
    return df[column].str.split('', n = 5, expand=True)

推荐阅读