Výběr s pravděpodobností – Python – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Výběr s pravděpodobností – Python – Fórum – Programujte.comVýběr s pravděpodobností – Python – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Dostál
~ Anonymní uživatel
3 příspěvky
24. 10. 2015   #1
-
0
-

Zdravím.

Pracuji na nějakých "vědečtějších" výpočtech v prostředí Anaconda (mám tedy SciPy, NumPy a podobné věci). Mám nějaký seznam jevů (v programu příkazů, které se mají udělat) a každý jev má určitou pravděpodobnost. Potřeboval bych něco co mi bude s danou pravděpodobností jednotlivých prvků vybírat, který jev se stane. 

Nejlepší by bylo, kdyby existovala nějaká zabudovaná funkce (celkem bych to i od těchto knihoven očekával). Pokud ne, máte nějaký efektivní způsob jak něco takového udělat?

Přeji pěkný víkend.

Nahlásit jako SPAM
IP: 80.188.18.–
Reklama
Reklama
Wrunx
~ Anonymní uživatel
34 příspěvků
25. 10. 2015   #2
-
0
-

Kdysi jsem používal takovýto laický postup:

from random import randint
prav_jevu_a=30 # procent
prav_jevu_b=70
bazen="a"*prav_jevu_a+"b"*prav_jevu_b

# nahodny vyber zohlednujici pravdepodobnost
volba=""
for i in xrange(1,10000): # kolik pokusu
    volba+=bazen[randint(0,len(bazen)-1)] # nahodny vyber z bazenu

# no a jak to vyslo:
print 70/30.0 # idealni pripad
print float(volba.count("b"))/volba.count("a") # uspesnost "nahodneho" vyberu

Nahlásit jako SPAM
IP: 188.120.195.–
Wrunx
~ Anonymní uživatel
34 příspěvků
30. 10. 2015   #3
-
0
-

No, a pokud někdo chce "more pythonic way", stačí nebýt líný a zeptat se strejdy gůgla :-D

"python weigthed choice?" a hned první odkaz je:

http://stackoverflow.com/questions/3679694/a-weighted-version-of-random-choice

Nahlásit jako SPAM
IP: 188.120.195.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 18 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý