Re: [python] Suma podle klice slovniku v seznamu

2013-04-16 Tema obsahu Honza Javorek
Ha, že je v operator i itemgetter jsem zapomněl :-) Pak je to ještě kompaktnější one-liner. def summarize(data): return ( {'a': val, 'b': sum(map(itemgetter('b'), group))} for (val, group) in groupby(data, key=itemgetter('a')) ) Díky za opravu. H 2013/4/16 Jan

Re: [python] Suma podle klice slovniku v seznamu

2013-04-16 Tema obsahu Petr Přikryl
použít opravdovou tabulku (sqlite) a opravdový SQL dotaz. Mějte se fajn, Petr __ Od: Jan Bednařík jan.bedna...@gmail.com Komu: Konference PyCZ python@py.cz Datum: 16.04.2013 00:32 Předmět: Re: [python] Suma podle klice slovniku v

Re: [python] Suma podle klice slovniku v seznamu

2013-04-16 Tema obsahu Jirka Vejrazka
__ Od: Jan Bednařík jan.bedna...@gmail.com Komu: Konference PyCZ python@py.cz Datum: 16.04.2013 00:32 Předmět: Re: [python] Suma podle klice slovniku v seznamu Myslím že to využití groupby je parádní. Je to snadno čitelné

Re: [python] Suma podle klice slovniku v seznamu

2013-04-16 Tema obsahu Petr Přikryl
, Petr __ Od: Jan Bednařík jan.bedna...@gmail.com Komu: Konference PyCZ python@py.cz Datum: 16.04.2013 00:32 Předmět: Re: [python] Suma podle klice slovniku v seznamu Myslím že to využití groupby je parádní. Je to snadno čitelné

Re: [python] Suma podle klice slovniku v seznamu

2013-04-16 Tema obsahu Vladimir Macek
On 16.4.2013 10:04, Petr Přikryl wrote: O collection.Counter tu byla zmínka, ale řešení neodpovídá požadavku. P. A já např. nepochopil požadavek a tak jsem zticha, což ve výsledku znamená, že je tu méně možných řešení tohoto zapeklitého problému. :) V.

Re: [python] Suma podle klice slovniku v seznamu

2013-04-16 Tema obsahu azurIt
A já např. nepochopil požadavek a tak jsem zticha, což ve výsledku znamená, že je tu méně možných řešení tohoto zapeklitého problému. :) Skus si prebehnut riesenia ostatnych, zadanie bolo vcelku jasne. azur ___ Python mailing list Python@py.cz

Re: [python] Suma podle klice slovniku v seznamu

2013-04-16 Tema obsahu Jaroslav Lukesh
Ahoj a díky za rozšíření obzorů. Jsou to data ne zrovna jednoduše vycucaná z databáze, o nějaké dočasné tabulcev sqlu jsem uvažoval protože je nad tímto selektivně sečteným výsledkem víc operací, ale připadalo mi to jako ne příliš čisté řešení. Otrocky s pomocnýma proměnnýma to taky jde, ale

Re: [python] Suma podle klice slovniku v seznamu

2013-04-16 Tema obsahu Petr Přikryl
...@seznam.cz Komu: Konference PyCZ python@py.cz Datum: 16.04.2013 15:06 Předmět: Re: [python] Suma podle klice slovniku v seznamu Ahoj a díky za rozšíření obzorů. Jsou to data ne zrovna jednoduše vycucaná z databáze, o nějaké dočasné tabulcev sqlu jsem uvažoval protože je nad tímto selektivně

Re: [python] Suma podle klice slovniku v seznamu

2013-04-16 Tema obsahu Jan Bednařík
2013/4/16 Jaroslav Lukesh luk...@seznam.cz Ahoj a díky za rozšíření obzorů. Jsou to data ne zrovna jednoduše vycucaná z databáze, o nějaké dočasné tabulcev sqlu jsem uvažoval protože je nad tímto selektivně sečteným výsledkem víc operací, ale připadalo mi to jako ne příliš čisté řešení.

[python] Suma podle klice slovniku v seznamu

2013-04-15 Tema obsahu Jaroslav Lukesh
Dobrý den, existuje na toto nějaký jednoduchý fígl? mám zdroj (první dva slovníky jsou za sebou abyste je nemuseli hledat, jinak jsou rozmístěná všeljak) [{'a':4,'b':3},{'a':4,'b':5},{'a':1,'b':3},{'a':3,'b':2}] a chci ve výsledku sesumírovat všecky b podle stejného klíče a, takto:

Re: [python] Suma podle klice slovniku v seznamu

2013-04-15 Tema obsahu starenka .
Ahoj, dal sem si malyho panaka, abych to pochopil, ale porad nechapu, pokud by ti nahodou slo o sumu cisel u klicu, tak collections.Counter: import collections c = collections.Counter() for one in [{'a':4,'b':3},{'a':4,'b':5},{'a':1,'b':3},{'a':3,'b':2}]: ... c.update(one) ... c

Re: [python] Suma podle klice slovniku v seznamu

2013-04-15 Tema obsahu azurIt
: 15.04.2013 21:59 Predmet: [python] Suma podle klice slovniku v seznamu Dobrý den, existuje na toto nějaký jednoduchý fígl? mám zdroj (první dva slovníky jsou za sebou abyste je nemuseli hledat, jinak jsou rozmístěná všeljak) [{'a':4,'b':3},{'a':4,'b':5},{'a':1,'b':3},{'a':3,'b':2}] a chci ve

Re: [python] Suma podle klice slovniku v seznamu

2013-04-15 Tema obsahu Honza Javorek
Jde to samozřejmě v podstatě one-linerem, ale bude to nečitelný. from itertools import groupby def summarize(data): get_b = lambda x: x['b'] get_a = lambda x: x['a'] return ( {'a': val, 'b': sum(map(get_b, group))} for (val, group) in groupby(data,

Re: [python] Suma podle klice slovniku v seznamu

2013-04-15 Tema obsahu Jan Bednařík
Myslím že to využití groupby je parádní. Je to snadno čitelné, jednoduché a elegantní řešení. Těžko to půjde napsat čitelnějí pomocí cyklů. Ostatně právě kvůli tomuto příkladu existuje funkce groupby. Jen bych to lehce vylepšil použitím operator.itemgetter místo těch lambda funkcí, tzn.: from