Sample() Funktion i R

Sample Funktion I R



I R får vi slumpmässiga exempelvärden från en vektor eller en lista med hjälp av funktionen sample(). Det gör det möjligt för oss att slumpmässigt välja en delmängd av data som är användbar i många statistiska tillämpningar. Om indata är en lista i sample()-funktionen, kommer utdata också att vara en lista med samma antal element, men med de valda elementen. Den här artikeln visar sample()-funktionen för R med implementeringen som ställer in de olika argumenten.

Exempel 1: Använda funktionen Sample() med dataargumentet

Sample()-funktionen för R måste förses med exempeldata för att slumpmässigt generera ett tal. Exempeldatan är det obligatoriska argumentet för funktionen sample() vars kod anges i följande:

dataX < - c ( 10 , tjugo , 30 , 40 , femtio , 60 , 70 , 80 , 90 , 100 )

prov ( dataX , 3 )

prov ( dataX , 3 )

Här genererar vi först vektorerna för heltalselementen inom variabeln 'dataX'. Därefter anropar vi sample()-funktionen två gånger i koden och skickar 'dataX'-vektorn som vi tidigare genererade som ett argument till den. Den första användningen av samplet (dataX, 3) tar ett slumpmässigt urval av tre element från 'dataX'-vektorn. Resultaten är en slumpmässig permutation av tre element från 'dataX'. Efter det använder vi samplet(a, 5) igen som tar ytterligare ett oberoende slumpmässigt urval av tre element från 'dataX'-vektorn. Den här gången skiljer sig resultatet helt från den förra.







Utdatan visar de olika elementen när funktionen sample() anropas två gånger. Observera att varje gång vi skapar provet slumpmässigt erhålls olika element från vektorerna:





Exempel 2: Använda funktionen Sample() med Ersätt-argumentet

Dessutom har vi argumentet 'ersätt' för funktionen sample() som tar de logiska värdena. Ett liknande element kan väljas mer än en gång om elementet samplas med ersättningsalternativet TRUE. Men om värdet är inställt på FALSE, kan det bara finnas ett urval av varje element som gör att elementen samplas utan ersättning.





slumpmässiga_tal = c ( elva , 25 , 12 , 89 , Fyra fem , 16 , 67 , 38 , 96 , 55 , 73 )

prov ( slumpmässiga_tal , 4 , byta ut = SANN )

prov ( slumpmässiga_tal , 5 , byta ut = SANN )

Här definierar vi först vektorn med några numeriska värden i variabeln 'random_numbers'. Efter det anropar vi funktionen sample() där 'slumptal' skickas som ett argument. Värdet på '4' specificeras för funktionen sample() som indikerar att den endast väljer fyra slumpmässiga värden från vektorerna i 'random_numbers'.

Därefter anger replace=TRUE i sample()-funktionen att varje värde kan väljas mer än en gång. Sedan distribuerar vi sample()-funktionen igen som väljer '5' slumpmässiga värden från vektorerna denna gång. På liknande sätt ställer vi in ​​ersätt-argumentet med 'TRUE' som tidigare för de multipla urvalsalternativen för varje värde.



Som vi kan se visar den första utgången vektorn av 4 slumpmässigt valda element från vektorn 'random_numbers'. Nästa utgång visar dock en vektor med '5' slumpmässigt valda element:

Exempel 3: Använda funktionen Sample() med storleksargumentet

Nästa argument som funktionen sample() godkänner är 'size'. 'Storleken' är en valfri parameter som anger värdet på prover som ska dras. Koden för funktionen sample() med parametern 'size' ges i följande:

vektorer < - 1 : 10

prov ( vektorer , storlek = 5 )

Här definieras en numerisk vektor som en sekvens av heltal från 1 till 10 i variabeln 'vektorer'. Funktionen sample() används sedan för att välja slumpmässigt element från vektorn. Som vi kan se tar funktionen sample() två argument. Det första argumentet är vektorerna som vi får provet från. Nästa argument är storleken som anges med värdet '5' vilket indikerar att det bara finns fem element att välja från vektorn.

Därför returneras de valda elementen i en slumpmässig ordning som en ny vektor i följande utdata:

Exempel 4: Använda funktionen Sample() för R-listan

Dessutom kan sample()-funktionen användas för listan i R. Denna del av exemplet får slumpmässiga värden från listan.

R_lista < - lista ( 1 : 4 ,

913 ,

c ( 'X' , 'ÅÅÅ' , 'BRA' ) ,

'ZZZ' ,

5 )

resultat < - R_lista [ prov ( 1 :längd ( R_lista ) , storlek = 4 ) ]

resultat

Här definieras listan över 'R_list' med element av olika typer, inklusive en vektor av numeriska tecken, ett enstaka nummer, en teckenvektor, en sträng och ett annat nummer. Efter det skapar vi en 'resultat'-variabel där sample()-funktionen anropas.

Inuti sample()-funktionen ställer vi in ​​uttrycket '1:length(R_list)' som indikerar vektorerna för index att sampla igenom. Därefter har vi ett 'storlek'-argument för att specificera antalet element som ska samplas, vilket är '4'. Därför genererar 'R_list' tre slumpmässigt valda element från listan över 'R_list'. Eftersom elementen i listan över 'R_list' är av olika typer, kan de resulterande elementen i 'resultat' också vara av olika typer.

Utdata representerar den nya listan som innehåller en slumpmässig delmängd av den ursprungliga listan:

Exempel 5: Använda funktionen Sample() med prob-argumentet

Dessutom har vi parametern 'prob' för funktionen sample(). Argumentet 'sannolikt' ger sannolikheten för det valda elementet i vektorn. Observera att alla element antas ha lika sannolikhet när argumentet 'sannolikt' inte används.

min data = c ( 31 , 99 , 5 , 24 , 72 )

prov ( min data , storlek = 10 , byta ut = SANN ,

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

Här hänvisas elementen till numeriska vektorer till 'min_data'. I nästa steg anropar vi sample()-funktionen där 'my_data' skickas till slumpmässigt valda 10 element från den. Sedan definieras argumentet 'storlek' som anger att värdet som ska väljas slumpmässigt ska vara av storleken '10'. Efter det tilldelar vi 'TRUE' till argumentet 'ersätt' vilket innebär att varje markerat element ersätts i vektorn innan nästa väljs. Det tredje argumentet som definieras i sample()-funktionen är 'prob' som definierar sannolikheten för att varje element i 'my_data'-vektorn ska väljas. Sannolikheten för det första elementet är satt till '0,5'. För de återstående fyra vektorelementen är sannolikheten '0,1'.

Följande utdata hämtas med högsta sannolikhet för det första elementet i vektorerna som förväntat:

Exempel 6: Använda funktionen Sample() för att rendera streckdiagrammet

Slutligen används sample()-funktionen för att konstruera barplotten i R för att visualisera fördelningen av en kategorisk variabel med en given sannolikhetsfördelning.

stickprov = c ( 1 , 2 , 3 )

barplot ( tabell ( prov ( stickprov , storlek = 500 , byta ut = SANN , sannolikhet = c ( .30 , .60 , .10 ) ) ) )

Här, efter att ha definierat 'sample_data' med vektorn för ett heltalsvärde, genererar vi barplotten genom att distribuera sample()-funktionen. Först anropar vi barplotten som anropar funktionen table() för att skapa en frekvenstabell för det resulterande provet. Sedan anger vi sample()-funktionen i table()-funktionen där ett slumpmässigt urval av storleken 1000 dras från en vektor med heltal 1 till 3. Sedan används 'prob'-argumentet för att specificera sannolikheten för att välja varje heltal .

Som vi kan se nu återges streckdiagrammet i det följande med de tre staplarna, en för varje heltal, och höjden på staplarna är relevant för det heltal som förekommer i provet:

Slutsats

Vi har sett hur funktionen sample() fungerar med olika exempel. Funktionen sample() används med olika argument där exempeldata krävs och alla andra argument är valfria och anropas i specifika fall. Funktionen sample() är dock användbar i statistisk analys eller när man arbetar med stora datamängder.