使用带有函数名称的列表迭代地应用于数据框列
Use a list with function names to iteratively apply over a dataframe column
上下文:我允许用户为清洁过程管道添加特定方法(附加到主列表,选择所有方法)。此列表中的每个元素都是一个函数的名称。
我的问题是:
为什么这样做:
dataframe[cleanedCol] =dataframe[colToClean].apply(replace_contractions).apply(remove_links).apply(remove_emails)
但是像这样的东西不是吗?
pipeline = ['replace_contractions','remove_links','remove_emails']
for method in pipeline:
dataframe[cleanedColumn] = dataframe[columnToClean].apply(method)
如何将列表中的每个方法(按照它们在列表中的顺序)迭代应用到数据框列?
提前致谢!
您可能必须 convert those strings to actual function objects 或者更好的做法是将函数对象而不是名称存储为字符串
pipeline = [replace_contractions, remove_links, remove_emails]
for method in pipeline:
dataframe[cleanedColumn] = dataframe[columnToClean].apply(method)
上下文:我允许用户为清洁过程管道添加特定方法(附加到主列表,选择所有方法)。此列表中的每个元素都是一个函数的名称。
我的问题是:
为什么这样做:
dataframe[cleanedCol] =dataframe[colToClean].apply(replace_contractions).apply(remove_links).apply(remove_emails)
但是像这样的东西不是吗?
pipeline = ['replace_contractions','remove_links','remove_emails']
for method in pipeline:
dataframe[cleanedColumn] = dataframe[columnToClean].apply(method)
如何将列表中的每个方法(按照它们在列表中的顺序)迭代应用到数据框列?
提前致谢!
您可能必须 convert those strings to actual function objects 或者更好的做法是将函数对象而不是名称存储为字符串
pipeline = [replace_contractions, remove_links, remove_emails]
for method in pipeline:
dataframe[cleanedColumn] = dataframe[columnToClean].apply(method)