pandas 的 dataframe 一列其实是一个 Series 数据结构,可以使用 Series 对象的 map 函数来针对当前列进行操作。
map 函数
Series 对象的 map 函数可以使用 lambda 形式或自定义的函数两种方式。
lambda 形式
df['col'] = df['col'].map(lambda x: math.log1p(max(x, 0)))
其中 lambda 函数中的 x 表示当前元素,冒号后面是针对当前元素的变换计算。
自定义函数
除了 lambda 函数形式外,也可以直接传递处理函数,如下示例:
define plus_one(x):
return x + 1
df['col'] = df['col'].map(plus_one)