R

R Programmeerimise õpetus

R Programmeerimise õpetus
Soovite kiiresti algajale R-programmeerijale? R on statistika, matemaatika ja andmeteadusega töötamiseks üks parimaid programmeerimiskeeli. See õpetus aitab teil õppida R-i ja luua oma esimese masinõppemudeli. Alustame.

R kompileerimine ja käivitamine käsurealt

R-programmide käitamiseks on kaks võimalust: R-skript, mida kasutatakse laialdaselt ja mis on kõige eelistatum, ja teine ​​on R CMD BATCH, see pole tavaliselt kasutatav käsk. Me võime neile helistada otse käsurealt või mõnest muust tööajast.

Mõeldavalt võite neid käske kutsuda IDE-sse sisseehitatud kestast ja tänapäeval on RStudio IDE-ga kaasas tööriistad, mis täiustavad või haldavad R-skripti ja R CMD BATCH-funktsioone.

source () funktsioon R-s on hea alternatiiv käsurea kasutamisele. See funktsioon võib kutsuda ka skripti, kuid selle funktsiooni kasutamiseks peate olema R-keskkonnas.

R sisseehitatud keele andmekomplektid

R-ga sisseehitatud andmekogumite loendamiseks kasutage käsku data (), leidke seejärel soovitud teave ja kasutage funktsiooni data () andmekogumi nime. Nagu andmed (funktsiooni nimi).

Kuva andmekogumid R-s

Küsimärk (?) võiks kasutada andmekogumite jaoks abi küsimiseks.

Kõigi leidmiseks kasutage kokkuvõtet ().

Plot () on ka funktsioon, mida kasutatakse graafikute joonistamiseks.

Loome testskripti ja käivitame selle. Loo p1.R fail ja salvestage see kodukataloog koos järgmise sisuga:

Koodinäide:

 # Lihtne tere maailma kood R-formaadis ("Tere maailm!") print (" LinuxHint ") print (5 + 6) 

Tere maailma jooksmine

R andmeraamid

Andmete tabelitesse salvestamiseks kasutame R-i struktuuri nimega a Andmeraam. Seda kasutatakse võrdse pikkusega vektorite loetlemiseks. Näiteks järgmine muutuv nm on andmeraam, mis sisaldab kolme vektorit x, y, z:

x = c (2, 3, 5) y = c ("aa", "bb", "cc") z = c (TÕENE, VALE, TÕENE) # nm on andmekaader nm = andmed.raam (n, s, b) 

On olemas mõiste, mida nimetatakse SisseehitatudAndmeraamid ka R-s. mtcars on üks sellistest R-i sisseehitatud andmeraamist, mida me oma paremaks mõistmiseks näitena kasutame. Vaadake allolevat koodi:

 > mtcars mpg cyl disp hp drat wt… Mazda RX4 21.0 6 160 110 3.90 2.62… buss RX4 Wag 21.0 6 160 110 3.90 2.88… Datsun 710 22.8 4 108 93 3.85 2.32… 

mtcars bulitini andmekaader

Päis on veeru nimesid sisaldava tabeli ülemine rida. Andmeread annetatakse iga horisontaalse joone abil; iga rida algab rea nimega ja seejärel tegelike andmetega. Rea andmeliiget nimetatakse lahtriks.

Lahtris andmete hankimiseks sisestame rea ja veeru koordinaadid ühte nurksulgude operaatorisse „[]”. Koordinaatide eraldamiseks kasutame koma. Järjekord on hädavajalik. Koordinaat algab reaga, siis komaga ja lõpeb veeruga. Lahtri väärtus 2nd rida ja 1st veerg on esitatud järgmiselt:

 > mtcars [2, 2] [1] 6 

Koordinaatide asemel võime kasutada ka rea ​​ja veeru nime:

 > mtcars ["Bus RX4", "mpg"] [1] 6 

funktsiooni nrow kasutatakse andmeraami ridade arvu leidmiseks.

 > nrow (mtcars) # andmeridade arv [1] 32 

Funktsiooni ncol kasutatakse andmeraamistikus veergude arvu leidmiseks.

 > ncol (mtcars) # veergude arv [1] 11 

R Programmeerimissilmused

Teatud tingimustel kasutame tsükleid, kui tahame mõnda koodi osa automatiseerida või soovime korrata käskude jada.

R silmuse jaoks R-s

Kui tahame nende aastate teavet välja printida rohkem kui üks kord.

 print (kleebi ("Aasta on", 2000)) "Aasta on 2000" print (kleebi ("Aasta on", 2001)) "Aasta on 2001" print (kleebi ("Aasta on", 2002) ) "Aasta on 2002" print (kleebi ("Aasta on", 2003)) "Aasta on 2003" print (kleebi ("Aasta on", 2004)) "Aasta on 2004" print (kleebi (" Aasta on ", 2005))" Aasta on 2005 " 

Selle asemel, et oma väidet korduvalt korrata, kui seda kasutame eest loop see on meie jaoks palju lihtsam. Nagu nii:

 for (aasta c-s (2000,2001,2002,2003,2004,2005)) print (paste ("Aasta on", aasta)) "Aasta on 2000" "Aasta on 2001" "Aasta on 2002 "" Aasta on 2003 "" Aasta on 2004 "" Aasta on 2005 " 

Roopis R-s

 while (avaldis) lause 

Kui avaldise tulemus on TÕENE, sisestatakse silmuse keha. Tsükli sees olevad avaldused viiakse läbi ja voog naaseb, et avaldist uuesti hinnata. Silmus kordub seni, kuni avaldise väärtuseks saab FALSE, sel juhul silmus väljub.

Näide aja Loop-st:

 # i lähtestatakse algselt väärtuseks 0 i = 0, samas kui (i<5)  print (i) i=i+1  Output: 0 1 2 3 4 

Ülaltoodud while loopis on väljend i<5mis mõõdab TÕENE, kuna 0 on väiksem kui 5. Seega täidetakse silmuse keha ja i on väljund ja suurendatud. Tähtis on suurendada i silmuse sees, nii et see vastab mingil hetkel tingimusele. Järgmises tsüklis väärtus i on 1 ja silmus jätkub. See kordub kuni i võrdub 5-ga, kui tingimus 5<5 reached loop will give FALSE and the while loop will exit.

R funktsioonid

Et luua a funktsioon me kasutame direktiivi funktsiooni (). Täpsemalt, need on klassi R objektid funktsioon.

f <- function()  ##some piece of instructions  

Funktsioonid võidakse edastada teistele funktsioonidele, kuna argumendid ja funktsioonid võivad olla pesastatud, et saaksite määrata funktsiooni teise funktsiooni sees.

Funktsioonidel võib soovi korral olla mõni nimega argument, millel on vaikeväärtused. Kui te ei soovi vaikeväärtust, saate selle väärtuseks seada NULL.

Mõned faktid R-funktsiooni argumentide kohta:

# Funktsiooni määratlemine: f <- function (x, y = 1, z = 2, s= NULL)   

Sisseehitatud andmekogumiga logistilise regressioonimudeli loomine

The glm () funktsiooni kasutatakse R-s logistilise regressiooni sobitamiseks. funktsioon glm () sarnaneb lm () -ga, kuid glm () -il on mõned täiendavad parameetrid. Selle formaat näeb välja selline:

 glm (X ~ Z1 + Z2 + Z3, perekond = binoom (link = "logit"), andmed = minu andmed) 

X sõltub Z1, Z2 ja Z3 väärtustest. Mis tähendab, et Z1, Z2 ja Z3 on sõltumatud muutujad ja X on sõltuv. Funktsioon hõlmab täiendavat parameetrite perekonda ja sellel on väärtus binoom (link = "logit"), mis tähendab, et lingi funktsioon on logit ja regressioonimudeli tõenäosusjaotus on binoomne.

Oletame, et meil on näide õpilasest, kus ta saab sisseastumise kahe eksamitulemuse põhjal. Andmekomplekt sisaldab järgmisi üksusi:

Lahing Wesnothi eest 1.13.6 Areng vabastati
Lahing Wesnothi eest 1.13.6 ilmus eelmisel kuul, on 1-s kuues arendusversioon.13.x-seeria ja see pakub mitmeid täiustusi, eelkõige kasutajaliidese ja ...
League of Legendsi installimine Ubuntu 14-le.04
Kui olete League of Legends fänn, siis on see teile võimalus proovida League of Legendsit. Pange tähele, et LOL-i toetab PlayOnLinux, kui olete Linuxi...
Installige uusim OpenRA strateegiamäng Ubuntu Linuxi
OpenRA on tasuta / tasuta reaalajas strateegiamängumootor, mis loob uuesti Westwoodi varased mängud nagu klassikaline Command & Conquer: Red Alert. Ja...