Sample()-funksjon i R

Sample Funksjon I R



I R får vi tilfeldig utvalgsverdier fra en vektor eller en liste ved å bruke sample()-funksjonen. Det gjør det mulig for oss å tilfeldig velge et undersett av data som er nyttig i mange statistiske applikasjoner. Hvis inngangen er en liste i sample()-funksjonen, vil utgangen også være en liste med samme antall elementer, men med de valgte elementene. Denne artikkelen demonstrerer sample()-funksjonen til R med implementeringen som setter de forskjellige argumentene.

Eksempel 1: Bruk av Sample()-funksjonen med dataargumentet

Sample()-funksjonen til R må leveres med prøvedataene for å generere et tall tilfeldig. Eksempeldataene er det nødvendige argumentet til sample()-funksjonen hvis kode er gitt i følgende:

dataX < - c ( 10 , tjue , 30 , 40 , femti , 60 , 70 , 80 , 90 , 100 )

prøve ( dataX , 3 )

prøve ( dataX , 3 )

Her genererer vi først vektorene til heltallselementene i 'dataX'-variabelen. Deretter kaller vi sample()-funksjonen to ganger i koden og sender 'dataX'-vektoren som vi tidligere genererte som et argument til den. Den første bruken av prøven (dataX, 3) tar et tilfeldig utvalg av tre elementer fra 'dataX'-vektoren. Resultatene er en tilfeldig permutasjon av tre elementer fra 'dataX'. Etter det bruker vi sample(a, 5) igjen som tar et annet uavhengig tilfeldig utvalg av tre elementer fra 'dataX'-vektoren. Denne gangen er resultatet helt forskjellig fra den forrige.







Utdataene viser de forskjellige elementene ved å kalle sample()-funksjonen to ganger. Merk at hver gang vi lager prøven tilfeldig, oppnås forskjellige elementer fra vektorene:





Eksempel 2: Bruk av Sample()-funksjonen med Replace-argumentet

Videre har vi 'erstatt'-argumentet til sample()-funksjonen som tar de logiske verdiene. Et lignende element kan velges mer enn én gang hvis elementet er samplet med erstatningsalternativet TRUE. Men hvis verdien er satt til FALSE, kan det bare være ett utvalg av hvert element som fører til at elementene samples uten erstatning.





tilfeldige_tall = c ( elleve , 25 , 12 , 89 , Fire fem , 16 , 67 , 38 , 96 , 55 , 73 )

prøve ( tilfeldige_tall , 4 , erstatte = EKTE )

prøve ( tilfeldige_tall , 5 , erstatte = EKTE )

Her definerer vi først vektoren med noen numeriske verdier i 'random_numbers'-variabelen. Etter det påkaller vi sample()-funksjonen der 'random_numbers' sendes som et argument. Verdien til '4' er spesifisert til sample()-funksjonen som indikerer at den kun velger fire tilfeldige verdier fra vektorene i 'random_numbers'.

Deretter spesifiserer replace=TRUE i sample()-funksjonen at hver verdi kan velges mer enn én gang. Deretter distribuerer vi sample()-funksjonen igjen som velger '5' tilfeldige verdier fra vektorene denne gangen. På samme måte setter vi erstatningsargumentet med 'TRUE' som før for de flere valgalternativene for hver verdi.



Som vi kan se, viser den første utgangen vektoren av 4 tilfeldig valgte elementer fra 'random_numbers'-vektoren. Den neste utgangen viser imidlertid en vektor med '5' tilfeldig valgte elementer:

Eksempel 3: Bruk av Sample()-funksjonen med størrelsesargumentet

Det neste argumentet som sample()-funksjonen passerer er 'størrelsen'. 'Størrelsen' er en valgfri parameter som indikerer verdien av prøvene som skal trekkes. Koden til sample()-funksjonen med 'size'-parameteren er gitt i følgende:

vektorer < - 1 : 10

prøve ( vektorer , størrelse = 5 )

Her er en numerisk vektor definert som en sekvens av heltall fra 1 til 10 i 'vektorer'-variabelen. Sample()-funksjonen brukes deretter til å velge tilfeldige elementer fra vektoren. Som vi kan se, tar sample()-funksjonen to argumenter. Det første argumentet er vektorene som vi får prøven fra. Det neste argumentet er størrelsen som er spesifisert med verdien '5' som indikerer at det kun er fem elementer å velge fra vektoren.

Derfor returneres de valgte elementene i en tilfeldig rekkefølge som en ny vektor i følgende utdata:

Eksempel 4: Bruk av Sample()-funksjonen for R-listen

Dessuten kan sample()-funksjonen brukes for listen i R. Denne delen av eksemplet får tilfeldige verdier fra listen.

R_liste < - liste ( 1 : 4 ,

913 ,

c ( 'X' , 'ÅÅÅ' , 'FLINK' ) ,

'ZZZ' ,

5 )

resultat < - R_liste [ prøve ( 1 :lengde ( R_liste ) , størrelse = 4 ) ]

resultat

Her er listen over 'R_list' definert med elementer av forskjellige typer, inkludert en vektor med numerikk, et enkelt tall, en tegnvektor, en streng og et annet tall. Etter det lager vi en 'resultat'-variabel der sample()-funksjonen påkalles.

Inne i sample()-funksjonen setter vi '1:length(R_list)'-uttrykket som indikerer vektorene til indeksene som skal prøves gjennom. Deretter har vi et 'størrelse'-argument for å spesifisere antall elementer som skal samples, som er '4'. Derfor genererer 'R_list' tre tilfeldig valgte elementer fra listen over 'R_list'. Siden elementene i listen over 'R_list' er av forskjellige typer, kan de resulterende elementene i 'resultat' også være av forskjellige typer.

Utdataene representerer den nye listen som inneholder et tilfeldig delsett av den opprinnelige listen:

Eksempel 5: Bruk av Sample()-funksjonen med Prob-argumentet

I tillegg har vi 'prob'-parameteren til sample()-funksjonen. Argumentet 'sannsynlighet' gir sannsynligheten for det valgte elementet i vektoren. Merk at alle elementer antas å ha lik sannsynlighet når 'sannsynlig'-argumentet ikke brukes.

mine_data = c ( 31 , 99 , 5 , 24 , 72 )

prøve ( mine_data , størrelse = 10 , erstatte = EKTE ,

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

Her refereres elementene til numeriske vektorer til 'mine_data'. I neste trinn kaller vi sample()-funksjonen der 'my_data' sendes til tilfeldig valgte 10 elementer fra den. Deretter er 'størrelse'-argumentet definert som spesifiserer at verdien som skal velges tilfeldig skal være av '10' størrelse. Etter det tildeler vi 'TRUE' til 'erstatt'-argumentet, som betyr at hvert valgt element erstattes i vektoren før du velger det neste. Det tredje argumentet som er definert i sample()-funksjonen er 'prob' som definerer sannsynligheten for at hvert element i 'my_data'-vektoren skal velges. Sannsynligheten for det første elementet er satt til '0,5'. For de resterende fire vektorelementene er sannsynligheten '0,1'.

Følgende utgang hentes med størst sannsynlighet for det første elementet i vektorene som forventet:

Eksempel 6: Bruke Sample()-funksjonen til å gjengi strekplotten

Til slutt brukes sample()-funksjonen til å konstruere barplotten i R for å visualisere fordelingen av en kategorisk variabel med en gitt sannsynlighetsfordeling.

eksempeldata = c ( 1 , 2 , 3 )

barplot ( bord ( prøve ( eksempeldata , størrelse = 500 , erstatte = EKTE , prob = c ( .30 , .60 , .10 ) ) ) )

Her, etter å ha definert 'sample_data' med vektoren til en heltallsverdi, genererer vi barplotten ved å distribuere sample()-funksjonen. Først kaller vi barplotten som påkaller table()-funksjonen for å lage en frekvenstabell for den resulterende prøven. Deretter spesifiserer vi sample()-funksjonen i table()-funksjonen der et tilfeldig utvalg av størrelse 1000 trekkes fra en vektor med heltall 1 til 3. Deretter brukes 'prob'-argumentet til å spesifisere sannsynligheten for å velge hvert heltall. .

Som vi kan se nå, er barplotten gjengitt i det følgende med de tre stolpene, en for hvert heltall, og høyden på stolpene er relevant for heltallet som forekommer i prøven:

Konklusjon

Vi har sett hvordan sample()-funksjonen fungerer med ulike eksempler. Sample()-funksjonen brukes med forskjellige argumenter der eksempeldataene kreves og alle de andre argumentene er valgfrie og kalles på spesifikke tilfeller. Sample()-funksjonen er imidlertid nyttig i statistisk analyse eller når du arbeider med store datasett.