我有一个DataFrame df,我尝试迭代每一行,将两列的值映射为新值,但我在将包含映射的字典传递给df.apply时遇到了问题。
df.apply(lambda row: (map_dict[row['colA']], map_dict[row['colB']]), axis=1, args=(map_dict,), map_dict=map_dict)
我收到了错误信息。
File "<console>", line 1
SyntaxError: Generator expression must be parenthesized if not sole argument
我尝试阅读官方文档,但我很难理解对args参数的解释:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.apply.html
我也试过将map_dict作为关键字参数或位置参数传入,但仍然出现相同的错误。
df[['colA','colB']].apply(map_dict)
,它能正常工作吗? - EdChum