将函数应用于DataFrame中的每个单元格
发布于 2021-01-29 17:05:11
我有一个数据框可能看起来像这样:
A B C
foo bar foo bar
bar foo foo bar
我想浏览每行的每个元素(或每列的每个元素)并应用以下函数来获取后续的DF:
def foo_bar(x):
return x.replace('foo', 'wow')
A B C
wow bar wow bar
bar wow wow bar
是否有一个简单的单行代码可以将功能应用于每个单元格?
这是一个简单的示例,因此除了应用功能之外,可能还有一种更简单的方法来执行此特定示例,但是我真正要问的是如何在数据帧内的每个单元中应用功能。
关注者
0
被浏览
48
1 个回答
-
您可以使用
applymap()
简洁明了的案例。df.applymap(foo_bar) # A B C #0 wow bar wow bar #1 bar wow wow bar
另一个选择是向量化您的函数,然后使用
apply
方法:import numpy as np df.apply(np.vectorize(foo_bar)) # A B C #0 wow bar wow bar #1 bar wow wow bar