<分区>
如果我有一个函数
def do_irreversible_thing(a, b):
print a, b
还有一个数据框,比如说
df = pd.DataFrame([(0, 1), (2, 3), (4, 5)], columns=['a', 'b'])
为 Pandas 数据框中的每一行恰好运行函数的最佳方式是什么。 As其他指出questions ,像 df.apply pandas 这样的东西会为第一行调用函数两次。甚至使用 numpy
np.vectorize(do_irreversible_thing)(df.a, df.b)
导致函数在第一行被调用两次,df.T.apply()
或 df.apply(..., axis=1) 也是如此。
有没有比这个显式循环更快或更简洁的方法来调用每一行的函数?
for idx, a, b in df.itertuples():
do_irreversible_thing(a, b)