5
Say mam następujący dataframe:Wykonywanie funkcji w par wierszy pandy dataframe
>>> df=pd.DataFrame(data=['A','B','C','D','E'], columns=['Name'])
>>> df
Name
0 A
1 B
2 C
3 D
4 E
>>>
Chcę utworzyć listę wartości dla sąsiednich rzędach w dataframe. Jeśli utworzę indeks pary, mogę uzyskać ten wynik za pomocą grupy:
>>> df.index=[0,0,1,1,2]
>>> df.groupby(level=0).agg(lambda x: list(x))
Name
0 [A, B]
1 [C, D]
2 [E]
Jaki jest najskuteczniejszy sposób robienia tego?
najbardziej efektywny sposób, aby "Chcę utworzyć listę wartości sąsiednich wierszy w ramce danych." nie rób tego. Zachowaj to jako df i rób to, co musisz. Zobacz także [XY-problem] (http://meta.stackexchange.com/q/66377/184179). –
Tak, to jest problem, który tworzę listy w mojej ramce danych lub że stosuję funkcję do sąsiednich wierszy? Po prostu użyłem funkcji listy arbitralnie w tym przykładzie i jestem bardziej zainteresowany ogólnie w jaki sposób zastosować funkcję do sąsiednich rzędów. – AJG519
Możesz napisać własną funkcję, która akceptuje subdataframe w groupby ... jaką funkcję chcesz zastosować? Lub jest pytanie, jak grupować przyległość? –