Екцел формула: Вероватноћа пондерисана случајним бројем -

Преглед садржаја

Генеричка формула

=MATCH(RAND(),cumulative_probability)

Резиме

За генерисање случајног броја, пондерисаног са датом вероватноћом, можете користити помоћну табелу заједно са формулом која се заснива на функцијама РАНД и МАТЦХ.

У приказаном примеру, формула у Ф5 је:

=MATCH(RAND(),D$5:D$10)

Објашњење

Ова формула се ослања на помоћну табелу видљиву у опсегу Б4: Д10. Колона Б садржи шест бројева које желимо као коначни резултат. Колона Ц садржи пондер вероватноће додељен сваком броју, унет у процентима. Колона Д садржи кумулативну вероватноћу, створену овом формулом у Д5, копирану:

=SUM(D4,C4)

Приметите, намерно померамо кумулативну вероватноћу за један ред тако да вредност у Д5 буде нула. Ово је да би се осигурало да МАТЦХ може пронаћи положај за све вредности на нулу како је објашњено у наставку.

Да би генерисао случајну вредност, користећи пондерисану вероватноћу у помоћној табели, Ф5 садржи ову формулу, копирану доле:

=MATCH(RAND(),D$5:D$10)

Унутар МАТЦХ, вредност претраживања пружа функција РАНД. РАНД генерише случајну вредност између нуле и 1. Низ претраживања је опсег Д5: Д10, закључан, тако да се неће променити док се формула копира низ колону.

Трећи аргумент за МАТЦХ, тип подударања, је изостављен. Када је тип подударања изостављен, МАТЦХ ће вратити положај највеће вредности мање или једнако вредности претраживања *. У практичном смислу, то значи да функција МАТЦХ путује дуж вредности у Д5: Д10 док се не наиђе на већу вредност, а затим „одступи“ на претходни положај. Када МАТЦХ наиђе на вредност већу од највеће последње вредности у Д5: Д10 (.7 у примеру), враћа последњу позицију (6 у примеру). Као што је горе поменуто, прва вредност у Д5: Д10 је намерно нула како би се осигурало да вредности испод .1 буду „ухваћене“ табелом претраживања и врате положај 1.

* Вредности у опсегу претраживања морају се сортирати у растућем редоследу.

Насумична пондерисана вредност текста

Да бисте вратили случајну пондерисану текстуалну вредност (тј. Не-нумеричку вредност), можете да унесете текстуалне вредности у опсег Б5: Б10, а затим додате ИНДЕКС да бисте вратили вредност у том опсегу, на основу позиције коју враћа МАТЦХ:

=INDEX($B$5:$B$10,MATCH(RAND(),D$5:D$10))

Напомене

  1. На овај приступ сам налетео у посту на форуму на мрекцел.цом
  2. РАНД је испарљива функција и прерачунаће се са сваком променом радног листа
  3. Једном када имате случајне вредности, користите пасте специал> валуес да бисте по потреби заменили формулу

Занимљиви Чланци...