Pytania otagowane jako reduce

Reduce odnosi się do drugiego kroku w obliczeniach MapReduce, składnika większego, skalowalnego, równoległego algorytmu.

22
Znajdowanie średniej z listy
Muszę znaleźć średnią listę w Pythonie. To do tej pory mój kod l = [15, 18, 2, 36, 12, 78, 5, 6, 9] print reduce(lambda x, y: x + y, l) Mam go, więc sumuje wartości na liście, ale nie wiem, jak je podzielić?
473 python  list  lambda  average  reduce 


15
JavaScript zmniejsza liczbę obiektów
Powiedzmy, że chcę sumować a.xdla każdego elementu arr. arr = [{x:1},{x:2},{x:4}] arr.reduce(function(a,b){return a.x + b.x}) >> NaN Mam powody sądzić, że topór jest w pewnym momencie niezdefiniowany. Następujące działa dobrze arr = [1,2,4] arr.reduce(function(a,b){return a + b}) >> 7 Co robię źle w pierwszym przykładzie?


4
NameError: nazwa „zmniejsz” nie jest zdefiniowana w Pythonie
Używam Python 3.2. Próbowałem tego: xor = lambda x,y: (x+y)%2 l = reduce(xor, [1,2,3,4]) I wystąpił następujący błąd: l = reduce(xor, [1,2,3,4]) NameError: name 'reduce' is not defined Próbowałem wydrukować reducena interaktywnej konsoli - otrzymałem ten błąd: NameError: name 'reduce' is not defined Czy reducenaprawdę jest usunięty w Pythonie 3.2? …

13
JavaScript redukuje () w Object
Istnieje ładna metoda Array, która reduce()pozwala uzyskać jedną wartość z tablicy. Przykład: [0,1,2,3,4].reduce(function(previousValue, currentValue, index, array){ return previousValue + currentValue; }); Jaki jest najlepszy sposób na osiągnięcie tego samego w przypadku przedmiotów? Chciałbym to zrobić: { a: {value:1}, b: {value:2}, c: {value:3} }.reduce(function(previous, current, index, array){ return previous.value + current.value; …



4
Różnica między spasowaniem a redukcją?
Próbuje dowiedzieć się F #, ale irytować, gdy próbuje odróżnić krotnie i zmniejszyć . Fold wydaje się robić to samo, ale ma dodatkowy parametr. Czy istnieje uzasadniony powód, dla którego te dwie funkcje istnieją, czy też mają one służyć osobom z różnych środowisk? (Np .: ciąg i ciąg w C …

9
Jaki jest „pythonowy” odpowiednik funkcji „fold” z programowania funkcjonalnego?
Jaki jest najbardziej idiomatyczny sposób osiągnięcia czegoś takiego w Haskellu: foldl (+) 0 [1,2,3,4,5] --> 15 Lub jego odpowiednik w Rubim: [1,2,3,4,5].inject(0) {|m,x| m + x} #> 15 Oczywiście Python udostępnia reducefunkcję, która jest implementacją fold, dokładnie tak, jak powyżej, jednak powiedziano mi, że „pythonowym” sposobem programowania jest unikanie lambdaterminów …


12
Jak skorzystać z metody Early Break Redukcja ()?
Jak mogę przerwać iterację reduce()metody? for: for (var i = Things.length - 1; i >= 0; i--) { if(Things[i] <= 0){ break; } }; reduce() Things.reduce(function(memo, current){ if(current <= 0){ //break ??? //return; <-- this will return undefined to memo, which is not what I want } }, 0)


2
Gdzie jest metoda rozszerzenia LINQ „składana”?
Znalazłem w próbkach Linq MSDN zgrabną metodę o nazwie Fold (), której chcę użyć. Ich przykład: double[] doubles = { 1.7, 2.3, 1.9, 4.1, 2.9 }; double product = doubles.Fold((runningProduct, nextFactor) => runningProduct * nextFactor); Niestety, nie mogę tego skompilować, ani w ich przykładzie, ani we własnym kodzie i nie …

6
Główna różnica między mapą a redukcją
Użyłem obu metod, ale jestem dość zdezorientowany, jeśli chodzi o użycie obu metod. Czy jest coś, co mapmoże, ale reducenie może, i odwrotnie? Uwaga: Wiem, jak używać obu metod, które kwestionuję, aby określić główną różnicę między tymi metodami i kiedy musimy ich użyć.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.