Sample()-funktio R:ssä

Sample Funktio R Ssa



R:ssä saamme satunnaisesti näytearvoja vektorista tai listasta käyttämällä sample()-funktiota. Sen avulla voimme satunnaisesti valita datan osajoukon, joka on hyödyllinen monissa tilastosovelluksissa. Jos syöte on luettelo sample()-funktiossa, tulos on myös luettelo, jossa on sama määrä elementtejä, mutta valituilla elementeillä. Tämä artikkeli esittelee R:n sample()-funktion toteutuksella, joka asettaa eri argumentit.

Esimerkki 1: Sample()-funktion käyttäminen data-argumentin kanssa

R:n sample()-funktio on toimitettava näytedatan kanssa luvun luomiseksi satunnaisesti. Esimerkkidata on sample()-funktion vaadittu argumentti, jonka koodi annetaan seuraavassa:

dataX < - c ( 10 , kaksikymmentä , 30 , 40 , viisikymmentä , 60 , 70 , 80 , 90 , 100 )

näyte ( dataX , 3 )

näyte ( dataX , 3 )

Tässä luomme ensin kokonaislukuelementtien vektorit 'dataX'-muuttujan sisällä. Seuraavaksi kutsumme sample()-funktiota kahdesti koodissa ja välitämme sille argumentiksi aiemmin luomamme dataX-vektorin. Näytteen (dataX, 3) ensimmäinen käyttökerta ottaa satunnaisen näytteen kolmesta elementistä 'dataX'-vektorista. Tulokset ovat satunnainen permutaatio kolmesta 'dataX' -elementistä. Sen jälkeen käytämme uudelleen näytettä (a, 5), joka ottaa toisen riippumattoman kolmen elementin satunnaisotoksen “dataX”-vektorista. Tällä kertaa tulos on täysin erilainen kuin edellisessä.







Tulos näyttää eri elementit, kun sample()-funktiota kutsutaan kahdesti. Huomaa, että aina kun luomme näytteen satunnaisesti, vektoreista saadaan erilaisia ​​elementtejä:





Esimerkki 2: Sample()-funktion käyttäminen Replace-argumentin kanssa

Lisäksi meillä on näyte()-funktion 'replace'-argumentti, joka ottaa loogiset arvot. Samankaltainen elementti voidaan valita useammin kuin kerran, jos elementistä otetaan näyte korvausvaihtoehdolla TRUE. Jos arvo on kuitenkin FALSE, kustakin elementistä voi olla vain yksi valinta, jolloin elementit otetaan näytteille ilman korvausta.





satunnaiset_luvut = c ( yksitoista , 25 , 12 , 89 , Neljä viisi , 16 , 67 , 38 , 96 , 55 , 73 )

näyte ( satunnaiset_luvut , 4 , korvata = TOTTA )

näyte ( satunnaiset_luvut , 5 , korvata = TOTTA )

Tässä määritämme ensin vektorin joillain numeerisilla arvoilla 'random_numbers' -muuttujassa. Tämän jälkeen kutsumme sample()-funktion, jossa 'random_numbers' välitetään argumenttina. Arvo '4' määritetään sample()-funktiolle, mikä osoittaa, että se valitsee vain neljä satunnaista arvoa vektoreista 'random_numbers'.

Seuraavaksi sample()-funktion vaihto=TRUE määrittää, että jokainen arvo voidaan valita useammin kuin kerran. Sitten otamme uudelleen käyttöön sample()-funktion, joka valitsee vektoreista tällä kertaa '5' satunnaista arvoa. Samoin asetamme korvausargumentin arvolla 'TRUE' kuten ennenkin useille valintavaihtoehdoille jokaiselle arvolle.



Kuten näemme, ensimmäinen tulos näyttää 4 satunnaisesti valitun elementin vektorin 'random_numbers' -vektorista. Seuraava tulos näyttää kuitenkin '5' satunnaisesti valitun elementin vektorin:

Esimerkki 3: Sample()-funktion käyttäminen kokoargumentin kanssa

Seuraava argumentti, jonka sample()-funktio läpäisee, on 'koko'. 'Koko' on valinnainen parametri, joka ilmaisee otettavien näytteiden arvon. Esimerkki()-funktion koodi parametrilla 'size' annetaan seuraavassa:

vektorit < - 1 : 10

näyte ( vektorit , koko = 5 )

Tässä numeerinen vektori määritellään 'vektorit'-muuttujan kokonaislukujen sarjana 1-10. Sample()-funktiota käytetään sitten satunnaisten elementtien valintaan vektorista. Kuten näemme, sample()-funktiolla on kaksi argumenttia. Ensimmäinen argumentti ovat vektorit, joista saamme näytteen. Seuraava argumentti on koko, joka määritetään arvolla '5', mikä osoittaa, että vektorista on valittavissa vain viisi elementtiä.

Tästä syystä valitut elementit palautetaan satunnaisessa järjestyksessä uutena vektorina seuraavassa lähdössä:

Esimerkki 4: Sample()-funktion käyttäminen R-listalle

Lisäksi sample()-funktiota voidaan käyttää listalle R:ssä. Tämä esimerkin osa saa listasta satunnaisia ​​arvoja.

R_list < - lista ( 1 : 4 ,

913 ,

c ( 'X' , 'YYY' , 'HYVÄ' ) ,

'ZZZ' ,

5 )

tulos < - R_list [ näyte ( 1 :pituus ( R_list ) , koko = 4 ) ]

tulos

Tässä 'R_list' -luettelo on määritelty erityyppisillä elementeillä, mukaan lukien numeerinen vektori, yksittäinen numero, merkkivektori, merkkijono ja toinen numero. Sen jälkeen luomme 'result'-muuttujan, jossa sample()-funktio kutsutaan.

Sample()-funktion sisällä asetamme lausekkeen '1:length(R_list)', joka ilmaisee indeksien vektorit, joista näyte otetaan. Seuraavaksi meillä on 'koko'-argumentti, joka määrittää näytteitettävien elementtien lukumäärän, joka on '4'. Siksi 'R_list' luo kolme satunnaisesti valittua elementtiä 'R_list' -luettelosta. Koska 'R_list'-luettelon elementit ovat erityyppisiä, tuloksena olevat elementit voivat myös olla erityyppisiä.

Tulos edustaa uutta listaa, joka sisältää alkuperäisen luettelon satunnaisen osajoukon:

Esimerkki 5: Sample()-funktion käyttäminen Prob-argumentin kanssa

Lisäksi meillä on sample()-funktion 'prob'-parametri. Argumentti 'todennäköisyys' antaa valitun elementin todennäköisyyden vektorissa. Huomaa, että kaikilla elementeillä oletetaan olevan yhtä suuri todennäköisyys, kun 'prob'-argumenttia ei käytetä.

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

näyte ( my_data , koko = 10 , korvata = TOTTA ,

prob = c ( 0.5 , rep ( 0.1 , 4 ) ) )

Tässä numeeristen vektorien elementteihin viitataan nimellä 'my_data'. Seuraavassa vaiheessa kutsumme sample()-funktiota, jossa 'my_data' välitetään siitä satunnaisesti valitulle 10 elementille. Sitten määritellään 'koko'-argumentti, joka määrittää, että satunnaisesti valittavan arvon tulee olla '10' kokoinen. Tämän jälkeen annamme 'korvaa'-argumentille 'TRUE', mikä tarkoittaa, että jokainen valittu elementti korvataan vektorilla ennen seuraavan valitsemista. Kolmas sample()-funktiossa määritetty argumentti on 'todennäköisyys', joka määrittää todennäköisyyden, että jokainen 'my_data'-vektorin elementti valitaan. Ensimmäisen elementin todennäköisyydeksi on asetettu '0,5'. Jäljelle jääville neljälle vektorielementille todennäköisyys on '0,1'.

Seuraava tulos noudetaan vektorien ensimmäisen elementin suurimmalla todennäköisyydellä odotetusti:

Esimerkki 6: Sample()-funktion käyttäminen pylväskuvaajan hahmontamiseen

Lopuksi näyte()-funktiota käytetään pylväskaavion muodostamiseen R:ssä kategorisen muuttujan jakauman visualisoimiseksi tietyllä todennäköisyysjakaumalla.

sample_data = c ( 1 , 2 , 3 )

barplot ( pöytä ( näyte ( sample_data , koko = 500 , korvata = TOTTA , prob = c ( .30 , .60 , .10 ) ) ) )

Tässä, kun 'sample_data' on määritelty kokonaislukuarvon vektorilla, luomme pylväskaavion ottamalla käyttöön sample()-funktion. Ensin kutsumme barplotia, joka kutsuu table()-funktion luomaan tuloksena olevasta näytteestä taajuustaulukon. Sitten määritämme sample()-funktion table()-funktiossa, jossa satunnainen otos, jonka koko on 1000, otetaan kokonaislukujen 1-3 vektorista. Sitten 'prob'-argumenttia käytetään määrittämään kunkin kokonaisluvun valinnan todennäköisyys. .

Kuten nyt näemme, pylväskaavio esitetään seuraavassa kolmella pylväällä, yksi kullekin kokonaisluvulle, ja pylväiden korkeudella on merkitystä näytteessä esiintyvän kokonaisluvun kannalta:

Johtopäätös

Olemme nähneet, kuinka sample()-funktio toimii useilla esimerkeillä. Esimerkki()-funktiota käytetään eri argumenttien kanssa, kun näytetiedot vaaditaan ja kaikki muut argumentit ovat valinnaisia ​​ja niitä kutsutaan tietyissä tapauksissa. Sample()-funktio on kuitenkin hyödyllinen tilastoanalyysissä tai työskenneltäessä suurten tietojoukkojen kanssa.