Uvod v generator naključnih števil v R

Generator naključnih števil v R je pomemben vidik znanosti o podatkih in statistika ustvarja naključna števila ali generira naključne elemente. Na primer izbira naključnih ljudi iz podatkovnega okvira populacije, da bi analizirali in dobili vpogled v podatke. Preprosta rešitev za ustvarjanje naključnih števil je z uporabo funkcij. Naključna števila so uporabna na različnih področjih, kot so modeliranje, znanost o podatkih in vzorčenje (statistika). Z razširitvijo omrežja se zdi razvoj raziskav na generatorju naključnih števil potreben. Naključne številke igrajo ključno vlogo v varnostnih sistemih in nam nudijo prefinjen sistem za poostritev varnosti omrežja.

Spodaj je en primer za ustvarjanje in tiskanje 50 vrednosti med 1 in 99 s funkcijo runif ().

Koda

RandomNum <- runif(50, 1, 99)
RandomNum

Izhod:

Generator naključnih števil pomaga ustvariti zaporedje števk, ki jih je mogoče shraniti kot funkcijo, ki bo kasneje uporabljena v operacijah. Generator naključnih števil dejansko ne proizvaja naključnih vrednosti, saj zahteva začetno vrednost, imenovano SEED. Generiranje naključnih števil lahko upravljate s funkcijami SET.SEED (). Ukaz SET.SEED () uporablja celo število za zagon naključnega števila generacij. Nadalje lahko generirano zaporedje naključnih številk shranite in uporabite pozneje.

Na primer, kodo bomo uporabili za vzorčenje 10 številk med 1 in 100 in jo nekajkrat ponovili.

Prvič se SET.SEED () začne s semenom kot 5 in drugič kot seme kot 12. Za vsako ponovitev je bilo ustvarjenih deset naključnih števil.

Koda

set.seed(5) # random number will generate from 5
TenRandomNumbers <- sort(sample.int(100, 10))
TenRandomNumbers

Izhod:

Koda:

set.seed(12) # random number will generate from 12
TenRandomNumbers <- sort(sample.int(100, 10))
TenRandomNumbers

Izhod:

Funkcije generatorja naključnih števil

V R so vgrajene funkcije za generiranje niza naključnih števil iz standardnih razdelitev, kot so normalne, enotne, binomne porazdelitve itd. V naslednjem razdelku bomo videli različne funkcije, kot so runif (), rnorm (), rbinom () in rexp () za ustvarjanje naključnih števil.

1. Enotno porazdeljene naključne številke

Za ustvarjanje enakomerno razporejenega naključnega števila runif () se uporablja. Privzeto območje 0 - 1. Najprej bomo morali določiti številko, ki jo je treba ustvariti. Poleg tega lahko območje distribucije določite z argumentom max in min.

Koda

# To get 5 uniformly distributed Random Numbers
runif(5)

Izhod:

Koda

# Get 5 random Numbers from 5 to 99
runif(5, min=5, max=99)

Izhod:

Koda

#To generate 5 integers from 0 to 100
floor(runif(5, min=0, max=101))

Izhod:

Koda

# Generating integers without replacement
sample(1:100, 5, replace=FALSE)

Izhod:

2. Običajno porazdeljene naključne številke

Za ustvarjanje števil iz običajne distribucijske rnorm () se uporablja. Kjer je srednja vrednost 0 in standardni odklon 1. Najprej bomo morali določiti število, ki ga je treba ustvariti. Poleg tega je mogoče določiti srednjo vrednost in SD (standardni odklon).

Koda

rnorm(5)

Izhod:

Koda

# using a different mean and standard deviation
rnorm(4, mean=70, sd=10)

Izhod:

Koda

# histogram of the numbers to verify the distribution
X <- rnorm(400, mean=70, sd=10)
hist(X)

Izhod:

Uporaba rnorm () za ustvarjanje običajnega porazdeljenega naključnega števila

3. Binomne naključne številke

Binomna naključna števila so diskretni niz naključnih števil. Za pridobitev vrednosti binomnega števila n spremenimo v želeno število preskusov. Na primer preskus 5, kjer je n = 5

Koda:

n= 5
p=.5
rbinom(1, n, p)
# 1 success in 5 trails
n= 5
p=.5
rbinom(19, n, p) # 10 binomial numbers

Izhod:

4. eksponEntivno razporejena naključna števila

Eksponentna porazdelitev se uporablja za opis življenjske dobe električnih komponent. Na primer, povprečna življenjska doba električne svetilke je 1500 ur.

Koda:

x=rexp(100, 1/1500)
hist(x, probability=TRUE, col= gray(.9), main="exponential mean=1500")
curve(dexp(x, 1/1500), add= T)

Izhod:

Ustvarjanje števila celih in plavajočih točk

Zdaj bomo spoznali generiranje naključnih števil za dve vrsti števil, ki so na voljo v R. So cela števila in plavajoče točke ali številke s plavajočo točko. R bo samodejno zaznal obe kategoriji in se po potrebi premikal po njih. Celo število v R je sestavljeno iz celotnega števila, ki je lahko pozitivno ali negativno, medtem ko število s plavajočo vejico vključuje realna števila. Sestavljen je iz vrednosti, ki določa nadaljnjo števko iz decimalne točke. Vrednost je v binarni obliki in na voljo je število binarnih mest, ki jih želite premakniti. Za ustvarjanje naključnih celih vgrajenih vzorcev () je funkcija zanesljiva in hitra. Poslovne potrebe zahtevajo analizo vzorca podatkov. Za izbiro vzorca ima R vzorec () funkcijo. Za ustvarjanje naključnih celih števil med 5 in 20 pod vzorčno funkcijsko kodo se uporablja.

Koda

rn = sample(5:20, 5)
rn

Izhod:

Ustvari naključni vzorec 5

V zgornjem primeru je bilo kot naveden argument ustvarjenih pet vrednosti. Videli smo, kako lahko v R. izberemo podmnožico naključnih vrednosti. V realnem času boste morali generirati naključni vzorec iz obstoječega podatkovnega okvira. Izbira vzorca podatkov za opazovanje iz velikega nabora podatkov je eno od opravil, s katerimi se inženirji podatkov ukvarjajo v svojem vsakodnevnem življenju.

Koda

Height_Weight_Data <- read.csv("test.csv") # to test this please download csv file
Height_Weight_Data
# Height_Weight_Data sample data frame; selecting a random subset in r
Sample <- Height_Weight_Data(sample(nrow(Height_Weight_Data), 5), ) # pick 5 random rows from dataset
Sample

Izhod:

Ustvarjanje naključnega vzorca iz imen podatkovnih okvirjev kot Height_Weight_Data

Kar nekaj si je treba zapomniti glede števil s plavajočo vejico.

  • So binarne narave.
  • Omejeno v resničnem številu, ki je predstavljeno.

Zdaj pa poglejmo, kako lahko nastane naključno plavajoče število med -10 in 10

Koda

Random <- runif(n=10, min=-10, max=10)
Random

Izhod:

Ustvarjanje naključnih števil s plavajočimi točkami

Runif () se nanaša na naključno uniformo. V zgornjem primeru smo izpeljali 10 naključnih porazdeljenih števil med (-10: 10)

Zaključek

V tem članku smo obravnavali generator naključnih števil v R in videli, kako se funkcija SET.SEED uporablja za nadzor generiranja naključnih števil. Videli smo, kako lahko SEED uporabimo za ponovljive naključne številke, ki lahko ustvarijo zaporedje naključnih števil in nastavi SET -SEED (). Med analizami se občasno uporablja statistična metoda, ki zahteva generiranje naključnih števil. R je opremljen z več funkcijami, kot so enakomerna, normalna, binomska, Poissonova, eksponencialna in gama funkcija, ki omogoča simuliranje najpogostejše porazdelitve verjetnosti.

Priporočeni članki

To je vodnik za generator naključnih števil v R. Tukaj razpravljamo o uvedbi in funkcijah generatorja naključnih števil v R skupaj z ustreznim primerom. Če želite izvedeti več, lahko preberete tudi druge naše predlagane članke -

  1. Linearna regresija v R
  2. Binomna porazdelitev v R
  3. Logistična regresija v R
  4. Vrstico v R
  5. Vodnik po generatorju naključnih števil v Pythonu
  6. Generator naključnih števil v C #
  7. Generator naključnih števil v PHP

Kategorija: