Применяется для строки pandas

Подобно этому вопросу R , я хотите применить функцию к каждому элементу в Series (или каждой строке в DataFrame) с помощью Pandas, но хотите использовать в качестве аргумента этой функции индекс или идентификатор этой строки. В качестве тривиального примера предположим, что кто-то хочет создать список кортежей в форме [(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')]

Но должен ли быть более эффективный способ сделать это? Возможно, что-то более похожее на Panda, например Series.apply? На самом деле я не беспокоюсь (в данном случае) о возвращении чего-либо значимого, а больше об эффективности чего-то вроде «применить». Есть идеи?

9
задан Community 23 May 2017 в 12:02
поделиться