< návrat zpět
MS Excel
Téma: Excel - medián cenové hladiny na tržnici
Zaslal/a DLe 18.2.2017 22:18
Dobrý den,
řeším následující situaci: ve hře na tržišti prodejci nabízejí několik druhů materiálů. Každý prodejce má nastevenou svojí cenu pro jednotlivé druhy materiálu a prodává od každého druhu materiálu nějaký počet jednotek.
Vyberu si jeden druh materiálu a zajímá mě medián jeho ceny na celém tržišti s přihlédnutím k množství jednotek které jednotliví prodejci za jejich cenu prodávají.
Po oběhnutí tržiště data v tabulce vypadají tak, že v prvním sloupci mám jména jednotlivých prodejců, ve druhém sloupci pak cenu daného materiálu u jednotlivých prodejců a ve třetím sloupci pak informaci o počtu kusů, kolik jich jednotliví prodejci prodávají.
(Viz. odkaz: http://prntscr.com/eagluz)
Pokud provedu klasický medián cen jednotlivých prodejců, získám medián ceny jen za předpokladu, že by všichni prodejci prodávali stejný počet jednotek materiálu.
Pokud chci zohlednit počet kusů materiálů na trhu za určitou cenu, musím se svojí primitivní znalostí excelu vytvořit pomocnou tabulku, do které (dle výše uvedené tabulky) 777x nakopíruji cenu 21777, 500x cenu 21500, 229x cenu 22500... atd, a z toho všeho teprve provedu klasický medián a tak získám hodnotu, kterou potřebuji, tedy medián ceny jednotky jednoho materiálu v rámci celého trhu.
Dokážete mi poradit nějaký vzorec, abych se obešel bez té pomocné tabulky. Díky za pomoc.
lubo(19.2.2017 1:51)#035008 Pokud jsou hodnoty ve sloupci B setříděné, lze vytvořit např. ve sloupci D kumulativní sumu počtů ze sloupce C. Medián je potom v posledním řádku, ve kterém je kumulativní suma větší, než polovina celkové sumy řádku C.
Tj. stačí setřídit a do pomocného sloupce vložit kumulativní součet jednotek.
Jeden vzorec (maticový, vkládá se současným stiskem ctrl-shift-enter)
=INDEX(B1:B8;IFERROR(POZVYHLEDAT(SUMA(C1:C8)/2;SUBTOTAL(9;POSUN(C1;0;0;ŘÁDEK($C$1:$C$8);1)));0)+1)
(Data je nutné setřídit. Tady neřeším případ, kdy je medián mezi 2 hodnotami, vzorec by byl dost komplikovaný.)
citovat