【发布时间】:2012-06-25 14:32:18
【问题描述】:
类似于this R question,我想使用 Pandas 将函数应用于系列中的每个项目(或 DataFrame 中的每一行),但希望将此函数的索引或 id 用作该函数的参数排。作为一个简单的例子,假设一个人想要创建一个 [(index_i, value_i), ..., (index_n, value_n)] 形式的元组列表。使用简单的 Python for 循环,我可以做到:
In [1] L = []
In [2] s = Series(['six', 'seven', 'six', 'seven', 'six'],
index=['a', 'b', 'c', 'd', 'e'])
In [3] for i, item in enumerate(s):
L.append((i,item))
In [4] L
Out[4] [(0, 'six'), (1, 'seven'), (2, 'six'), (3, 'seven'), (4, 'six')]
但是必须有更有效的方法来做到这一点?也许像 Series.apply 这样更像熊猫的东西?实际上,我并不担心(在这种情况下)返回任何有意义的东西,但更多的是为了“应用”之类的效率。有什么想法吗?
【问题讨论】: