Chcę zastosować funkcję (len
) nad każdym elementem w wektorze. W R mogę to łatwo zrobić z sapply(cities,char)
. Czy istnieje taka alternatywa w Pythonie BEZ pisania pętli?Python vs. R: zastosowanie funkcji do każdego elementu w wektorze
Odpowiedz
Składnia to map(function, list)
.
Przykład:
map(len, [ [ 1,2,3], [4,5,6] ])
wyjściowa:
[ 3, 3 ]
można użyć funkcji mapę, która odbiera funkcję do zastosowania do iterable. Dokumentacja Mapa: here
Na przykład puszki zdać funkcja Anonymus (przy użyciu lambda) stosuje się do każdego elementu do listy w ten sposób:
>>> map(lambda x: x[1]*2 + 3, [[1,2,3], [1,4]])
[7, 11]
R sapply()
może być zastąpiony ze zrozumieniem list, ale dostatecznie zrozumiałe, że zrozumienie listy nie zapobiega jednoznacznemu zapisywaniu wartości .
Oprócz map()
należy przyjrzeć Pandas, który stanowi alternatywę Pythona do kilku funkcji, które ludzie używają w R.
import pandas as pd
vector = [1,2,3,4,5]
square_vector = pd.Series(vector).apply(lambda x: x**2)
print square_vector.tolist()
Powyższe wyniki kodu w nowej listy z wartościami kwadratowych z wpisałeś:
[1, 4, 9, 16, 25]
Tutaj zdałem wektorowi konstruktor serii pd.Series(vector)
i zastosować funkcję Anonymus apply(lambda x: x**2)
. Dane wyjściowe to seria pand, które w razie potrzeby można zamienić na listę tolist()
. Pandy serii mają wiele funkcji i są idealne do wielu zadań związanych z manipulowaniem i analizą danych.
- 1. Zastosowanie funkcji do macierzy odległości w R
- 2. R Dataable, zastosowanie funkcji do podzbioru kolumn
- 3. Zastosowanie max na każdego elementu macierzy
- 4. Pig: zastosowanie operatora foreach do każdego elementu w torbie
- 5. Odwołanie do elementu w wektorze
- 6. data.table w R - zastosowanie wielu funkcji do wielu kolumn
- 7. Kolejne/walcujące sumy w wektorze w R
- 8. Znalezienie najbardziej typowych elementów w wektorze w R
- 9. Zastosowanie MethodImplOptions.AggressiveInlining do funkcji F #
- 10. Lista różnych wartości w wektorze w R
- 11. Karmienie listę Pythona do funkcji biorąc w wektorze z Boost, Python
- 12. R: Zastosowanie czynnika
- 13. Wyszukiwanie indeksów wszystkich wystąpień elementu w wektorze
- 14. Wydajny sposób na zastosowanie funkcji do każdego plasterka 2D w tablicy 3D numpy
- 15. Jaki jest kod od drugiego do ostatniego elementu w wektorze
- 16. agencjom krajowym rankingu w wektorze równo [R]
- 17. Zastosowanie fizyki Box2D do UIView vs CALayer
- 18. R: zastosowanie funkcji na matrycy i utrzymanie wymiary matrycy
- 19. Powtórzenie każdego elementu siostrzanego
- 20. Dodawaj "menu" do każdego elementu listview
- 21. Czy istnieje odpowiednik funkcji Python dla funkcji smooth.spline w R
- 22. Haskell: Zastosowanie funkcji do wszystkich kombinacji argumentów
- 23. JQuery: Dołączanie wartości atrybutu do każdego elementu
- 24. Jak zastosować funkcję do każdego elementu kolumny tablicy w PostgreSQL?
- 25. jak uzyskać dostęp do określonego elementu każdego elementu widoku siatki
- 26. Pandy: zastosowanie różnych funkcji do różnych kolumn
- 27. Clojure - zastosowanie funkcji do wektora wektorów
- 28. Przekazywanie argumentów do funkcji powtórzyć poprzez zastosowanie
- 29. Matlab - uruchomienie funkcji z parametrami dla każdego elementu tablicy?
- 30. Skrót R, aby uzyskać ostatnie n wpisów w wektorze
https://docs.python.org/3/library/functions.html#map – jakevdp
Co ze zrozumieniem listy? '[len (el) dla el w wektorze]'. To bardziej Python niż "map". –
Ale 'sapply' to pętla! – Parfait