Funkcia Sample() v R

Funkcia Sample V R



V R získame náhodne vzorové hodnoty z vektora alebo zoznamu pomocou funkcie sample(). Umožňuje nám náhodne vybrať podmnožinu údajov, čo je užitočné v mnohých štatistických aplikáciách. Ak je vstupom zoznam vo funkcii sample(), výstupom bude tiež zoznam s rovnakým počtom prvkov, ale s vybranými prvkami. Tento článok demonštruje funkciu sample() R s implementáciou, ktorá nastavuje rôzne argumenty.

Príklad 1: Použitie funkcie Sample() s argumentom Data

Funkcia sample() funkcie R musí byť poskytnutá s údajmi vzorky, aby sa náhodne vygenerovalo číslo. Vzorové údaje sú povinným argumentom funkcie sample(), ktorej kód je uvedený v nasledujúcom texte:

dataX < - c ( 10 , dvadsať , 30 , 40 , päťdesiat , 60 , 70 , 80 , 90 , 100 )

vzorka ( dataX , 3 )

vzorka ( dataX , 3 )

Tu najprv vygenerujeme vektory celočíselných prvkov v premennej „dataX“. Ďalej v kóde dvakrát zavoláme funkciu sample() a odošleme mu vektor „dataX“, ktorý sme predtým vygenerovali ako argument. Prvé použitie vzorky (dataX, 3) vyberie náhodnú vzorku troch prvkov z vektora „dataX“. Výsledky sú náhodnou permutáciou troch prvkov z „dataX“. Potom znova použijeme vzorku (a, 5), ktorá vezme ďalšiu nezávislú náhodnú vzorku troch prvkov z vektora „dataX“. Tentoraz je výsledok úplne odlišný od predchádzajúceho.







Výstup zobrazuje rôzne prvky pri volaní funkcie sample() dvakrát. Všimnite si, že zakaždým, keď náhodne vytvoríme vzorku, získajú sa rôzne prvky z vektorov:





Príklad 2: Použitie funkcie Sample() s argumentom Nahradiť

Okrem toho máme argument „nahradiť“ funkcie sample(), ktorý preberá logické hodnoty. Podobný prvok možno vybrať viackrát, ak je prvok vzorkovaný s možnosťou nahradenia TRUE. Ak je však hodnota nastavená na FALSE, môže existovať iba jeden výber každého prvku, ktorý spôsobí, že prvky budú vzorkované bez výmeny.





náhodné_čísla = c ( jedenásť , 25 , 12 , 89 , Štyri, päť , 16 , 67 , 38 , 96 , 55 , 73 )

vzorka ( náhodné_čísla , 4 , nahradiť = PRAVDA )

vzorka ( náhodné_čísla , 5 , nahradiť = PRAVDA )

Tu najprv definujeme vektor pomocou niekoľkých číselných hodnôt v premennej „random_numbers“. Potom zavoláme funkciu sample(), kde sa ako argument odovzdá „náhodné_čísla“. Hodnota „4“ je špecifikovaná pre funkciu sample(), čo znamená, že vyberá iba štyri náhodné hodnoty z vektorov v „náhodné_čísla“.

Ďalej, nahradiť=TRUE vo funkcii sample() určuje, že každú hodnotu možno vybrať viac ako raz. Potom znova nasadíme funkciu sample(), ktorá tentoraz vyberie z vektorov „5“ náhodných hodnôt. Podobne nastavíme argument nahradenia na „TRUE“ ako predtým pre viaceré možnosti výberu pre každú hodnotu.



Ako vidíme, prvý výstup zobrazuje vektor 4 náhodne vybraných prvkov z vektora „random_numbers“. Ďalší výstup však zobrazuje vektor „5“ náhodne vybraných prvkov:

Príklad 3: Použitie funkcie Sample() s argumentom veľkosti

Ďalším argumentom, ktorý funkcia sample() prejde, je „veľkosť“. „Veľkosť“ je voliteľný parameter, ktorý označuje hodnotu vzoriek, ktoré sa majú nakresliť. Kód funkcie sample() s parametrom „size“ je uvedený v nasledujúcom texte:

vektory < - 1 : 10

vzorka ( vektory , veľkosť = 5 )

Tu je číselný vektor definovaný ako postupnosť celých čísel od 1 do 10 v premennej „vektory“. Funkcia sample() sa potom použije na náhodný výber prvkov z vektora. Ako vidíme, funkcia sample() má dva argumenty. Prvým argumentom sú vektory, z ktorých získame vzorku. Ďalším argumentom je veľkosť, ktorá je špecifikovaná hodnotou „5“, čo znamená, že z vektora je možné vybrať iba päť prvkov.

Preto sa vybrané prvky vrátia v náhodnom poradí ako nový vektor v nasledujúcom výstupe:

Príklad 4: Použitie funkcie Sample() pre zoznam R

Okrem toho je možné pre zoznam v R použiť funkciu sample(). Táto časť príkladu získava náhodné hodnoty zo zoznamu.

R_list < - zoznam ( 1 : 4 ,

913 ,

c ( 'X' , 'YYY' , 'DOBRE' ) ,

'ZZZ' ,

5 )

výsledok < - R_list [ vzorka ( 1 :dĺžka ( R_list ) , veľkosť = 4 ) ]

výsledok

Tu je zoznam „R_list“ definovaný s prvkami rôznych typov vrátane vektora čísel, jedného čísla, znakového vektora, reťazca a iného čísla. Potom vytvoríme premennú „výsledok“, kde sa vyvolá funkcia sample().

Vo vnútri funkcie sample() nastavíme výraz „1:length(R_list)“, ktorý označuje vektory indexov, cez ktoré sa má vzorkovať. Ďalej máme argument „veľkosť“ na určenie počtu prvkov, ktoré sa majú vzorkovať, čo je „4“. Preto „R_list“ generuje tri náhodne vybrané prvky zo zoznamu „R_list“. Keďže prvky v zozname „R_list“ sú rôznych typov, výsledné prvky vo „výsledku“ môžu byť tiež rôznych typov.

Výstup predstavuje nový zoznam, ktorý obsahuje náhodnú podmnožinu pôvodného zoznamu:

Príklad 5: Použitie funkcie Sample() s argumentom Prob

Okrem toho máme parameter „prob“ funkcie sample(). Argument „prob“ udáva pravdepodobnosť vybraného prvku vo vektore. Všimnite si, že všetky prvky majú rovnakú pravdepodobnosť, keď sa nepoužije argument „prob“.

moje_údaje = c ( 31 , 99 , 5 , 24 , 72 )

vzorka ( moje_údaje , veľkosť = 10 , nahradiť = PRAVDA ,

prob = c ( 0,5 , rep ( 0,1 , 4 ) ) )

Tu sa prvky číselných vektorov označujú ako „my_data“. V ďalšom kroku zavoláme funkciu sample(), kde sa „my_data“ odovzdá náhodne vybraným 10 prvkom z nej. Potom je definovaný argument „veľkosť“, ktorý určuje, že hodnota na náhodný výber by mala mať veľkosť „10“. Potom argumentu „nahradiť“ priradíme „TRUE“, čo znamená, že každý vybraný prvok sa nahradí do vektora pred výberom ďalšieho. Tretí argument, ktorý je definovaný vo funkcii sample() je „prob“, ktorý definuje pravdepodobnosť výberu každého prvku vo vektore „my_data“. Pravdepodobnosť prvého prvku je nastavená na „0,5“. Pre zvyšné štyri vektorové prvky je pravdepodobnosť „0,1“.

Nasledujúci výstup sa získa s najväčšou pravdepodobnosťou prvého prvku vo vektoroch, ako sa očakávalo:

Príklad 6: Použitie funkcie Sample() na vykreslenie Barplotu

Nakoniec sa funkcia sample() používa na vytvorenie barplotu v R na vizualizáciu rozdelenia kategorickej premennej s daným rozdelením pravdepodobnosti.

vzorové_údaje = c ( 1 , 2 , 3 )

barplot ( tabuľky ( vzorka ( vzorové_údaje , veľkosť = 500 , nahradiť = PRAVDA , prob = c ( .30 , .60 , .10 ) ) ) )

Tu, po definovaní „sample_data“ s vektorom celočíselnej hodnoty, vygenerujeme barplot nasadením funkcie sample(). Najprv zavoláme barplot, ktorý vyvolá funkciu table() na vytvorenie frekvenčnej tabuľky výslednej vzorky. Potom zadáme funkciu sample() v rámci funkcie table(), kde sa náhodná vzorka veľkosti 1000 vytiahne z vektora celých čísel 1 až 3. Potom sa argument „prob“ použije na určenie pravdepodobnosti výberu každého celého čísla. .

Ako teraz vidíme, barplot je vykreslený nasledovne s tromi pruhmi, jedným pre každé celé číslo, a výška pruhov je relevantná pre celé číslo, ktoré sa vyskytuje vo vzorke:

Záver

Ako funguje funkcia sample() sme videli na rôznych príkladoch. Funkcia sample() sa používa s rôznymi argumentmi, kde sa vyžadujú vzorové údaje a všetky ostatné argumenty sú voliteľné a sú vyvolané v špecifických prípadoch. Funkcia sample() je však užitočná pri štatistickej analýze alebo pri práci s veľkými množinami údajov.