Podobna do this R question, Chciałbym zastosować funkcję do każdej pozycji w serii (lub każdego wiersza w DataFrame) przy użyciu Pandy, ale chcesz użyć jako argument do tej funkcji indeks lub identyfikator z tego rzędu. Jako trywialny przykład załóżmy, że chcemy utworzyć listę krotek formularza [(index_i, value_i), ..., (index_n, value_n)]. Za pomocą prostego Python dla pętli, mogę zrobić: specyficzne dla rzędu pand zastosowanie
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')]
Ale musi być bardziej efektywny sposób to zrobić? Być może coś więcej Panda-takich jak Series.apply? W rzeczywistości nie martwię się (w tym przypadku) o zwrot nic znaczącego, ale bardziej o skuteczność czegoś w stylu "zastosuj". Jakieś pomysły?
Dzięki @ luke14free dla wskaźnika o wyliczeniu. Ostatecznie prawdopodobnie dostarczyłem zbyt uproszczony przykład, ale rzeczywiście dostarczyłeś odpowiednią odpowiedź. To, czego naprawdę chcę, to coś w rodzaju trzeciego przykładu, z dodanym warunkiem, który mówi, że wykładnik jest funkcją rzędu lub indeksu ... –
Hej @CarsonFarmer - zobacz moją ostatnią edycję – luke14free
Dzięki @ luke14free. W końcu zrobiłem to, co sugerowałeś, i rozwiązałeś mój problem w inny sposób, zmieniając moje dane. –