Back to site
Since 2004, our University project has become the Internet's most widespread web hosting directory. Here we like to talk a lot about web servers, web development, networking and security services. It is, after all, our expertise. To make things better we've launched this science section with the free access to educational resources and important scientific material translated to different languages.

Neki saveti za R početnike

Impatient R

Uvod

Ovo je tutorijal(Ranije poznat kao "Neki saveti za R početnike ") za one koji počinju da uče R programski jezik. To je drvo stranica - krećite se kroz stranice na bilo koji način koji najbolje odgovara vašem stilu učenja.

Verovatno ste nestrpljivi da naučite R - većina jeste.To je u redu. Ali imajte na umu da ako pokušate da preskočite osnove koje su ovde predstavljene ,skoro sigurno će trajati duže, na kraju

Ova stranica ima nekoliko delova, mogu se staviti u četiri kategorije: General,Objekti,Akcije,Pomoć

Uopšteno

Uvod
Sindrom praznog ekrana
Zablude zbog prethodnog jezika
Korisna računarska okruženja
R rečnik
Epilog

Objekti

Kjučni objekti
Čitanje podataka u R
Pregled objekata
Čuvanje objekata
Magične funkcije, magični objekti
Neki tipovi datoteka
Paketi

Akcije

Šta se dešava pri R pokretanju
Ključne akcije
Greške
Grafike
Vektorizacija
Namerno pravljenje grešaka

Pomoć

Kako da pročitam pomoćnu datoteku
Traženje funkcionalnosti
Neki drugi dokumenti
R-pomoć mailing lista

Uvod

Primarna namera ovog uputstva je --u prvih nekoliko dana vašeg kontakta sa R -- da vam pomogne da vam udobnije postane sa R.

Pitao sam R korisnike koje je njihovo najveće kamenje spoticanja bilo pri učenju R. Zajednički odgovor od kog sam bio prilično iznenađen je taj

da je najveći problem bilo to što su mislili da je R težak.

Kad se osvrnem,možda ne bi trebao da budem toliko tako iznenađen tim odgovorom. Prostranstvo funkcionalnosti R može biti prilično zastrašujuće (čak i za one od nas koji se koriste njime godinama), ali raditi jedan zadatak u R je logičan i često jednostavan proces. Iako R može ponekad da izgleda pakosno, osvetoljubivo i proizvoljno, uvek postoji logika u onome šta radi.

Tako da pritisnite broj jedan kada izgleda da R na početku ignoriše vaš strah.

Više o R uvodu (uključujući instalacije).

Šta se dešava prilikom pokretanja R

R se uglavnom koristi kao interaktivni program --dajete komandu R i on odgovara na tu komandu. Rezultat može da utiče na sledeću komandu koju dajete R.

Između vremena kada otvorite R i odazove vam se prvi put, razne stvari mogu da se desi (u zavisnosti od instalacije). Ali ono se uvek dešava je da neki broj "paketa" su "priloženi" na "listi za pretragu". (Navodnici ukazuju reči koje se koriste u tehničkom smislu - to jest, reči u navodnicima su deo R žargona).

Možete videti šta su ti paketi u vašem slučaju sa komandom:

 > search()

(Ne ukucavate ">" -- to je R brzina, ali pritisnite povratni taster na kraju reda.)

Prva stavka na listi za pretragu je "globalna okolina” . Ovo je vaš radni prostor gde će biti smešteni objekti koje kreirate tokom R .

R gasite sa komandom:

 > q()

R vće vas pitati da li želite da sačuvate ili izbrišete globalno okruženje, kada izađete. (U tom trenutku je sve ili ništa - pogledajte Saving objects kako da spasete samo neki od objekata.)

Ako sačuvate globalno okruženje, onda možete početi drugu sesiju R onim objektima u globalnom okruženju na startu u novom sazivu. Sačuvaćete objekte u globalnom okruženju, ne ne u sesiji. Konkretno, nećete sačuvati listu pretrage

Više o pokretanju R (uključujući specifikacije platforme).

Sindrom crnog ekrana

Uspešno ste startovali R na vašem računaru. Evo gde nevolja ponekad počinje --postoji veliko navodjenje koji vas mami da nešto započetne.

Vama ne treba ogledalo da vas jelen u odsjaju svetla gleda u lice.

Solucija je da prvo imate neko zaduzenje a onda da to pretvorite u sledecih par koraka.

Sindrom praznog ekrana.

Kljucni objekti

Vazna snaga r je da je vema obogacen objektima koji ga podrzavaju.Snaga moze da bude i vasa slabost kada prvi put radite i ucite u R.

Ali da bi započeli,sve što treba da imate na umu je nekoliko tipova objekata.

osnovni objekti

Ovo su tri važne osnovne

  • "atomic vector"
  • "List"
  • NULL

Atomic vector(atomsku vektor)

Postoje tri vrste atomskog vektora na koje ćete verovatno naići:

  • "numerički"
  • "logički"
  • "karakterni"

Ono što biste trebali da zapamtite o atomskim vektorima je da svi elementi u njima su samo jednog tipa. Tu ne može biti atomski vektor koji npr. ima i niti brojeva i karaktera istovremeno u sebi.

list(lista)

Liste mogu imati različite tipove stavki u različitim komponentama.Komponenti na listi je dozvoljeno da bude druga lista kao i atomski vektor (i druge stvari).

NULL(nula)

Završni objekat u listi gore je NULL. To je objekat koji ima nultu dužinu. Praktično svi ostali objekti sa kojima ćete se baviti imaće veću dužinu od nule.

izvedeni objekti

Postoje tri važna tipa onoga što bi se moglo nazvati izvedenim objektima (Izvod kao opcija u finansijama, a ne kao u račun.)

  • matrix
  • data frame
  • factor

matrix(matrica) i data frame(okvir podataka)

matrice i okviri podataka su oba pravougaona objekta podataka. Razlika između njih je u tome što sve u matrici mora da bude od iste atomske vrste, ali okviri podataka mogu imati različite vrste u različitim kolonama. Svaka kolona okvira podataka mora biti od jedne vrste.

Matrica može da izgleda identično kao okvir podataka, ali se oni sprovode u potpunosti drugačije.

Ponekad nije bitno da li imate matricu ili okvir podataka. A nekada je veoma važno znati koje imate.

factor(faktor)

Faktori predstavljaju kategorizaciju podataka (Možete pitati zašto se ne zovu nešto tipa kategorije - -Da, dobro, duga priča ...)

Faktori se često lako mešaju sa karakternim vektorima. Konkretno, kolone ramova podataka za koje možda mislite da su karakteri,često puta su zapravo faktori.

Ponekad nije bitno da li imate faktor ili karakterni vektor.A nekada je veoma važno znati koje imate .

Više o R ključnim objektima

ključne aktivnosti

Tri osnovne radnje u R su zadatak, indeksiranje i nasumična generacija.

Zadatak

Akcija u R je ubrzana funkcijjom poziva. Većina funkcija povrati vrednost (to jest, neki objekat podataka). Često ćete želeti da dodelite tom rezultatu ime. Postoje dva načina da se to uradi to. Možete da uradite:

 meanx <->

ili

 meanx = mean(x)

Kada ste izbrisali jednu od tih komandi, onda će meanx biti objekat u vašem globalnom okruženju .

Postoji šokantno količina kontroverzi u vezi koji oblik zadatka a se koristi.Iskaz koji ću ja ovde izneti je da koristite onaj koji vam više odgovara. Postoje mogućnosti da ćete naići na nevolje sa bilo kojim,ali koristeći strelicu okruženu prostorom je verovatno najsigurniji pristup blagim marginama.

NImajte na umu da je R osetljiv na velika slova. Dva imena meanx i Meanx su različita.

Indeksiranje

Indeksiranje je važno. To je čin vađenja delića iz objekata. Indeksiranje se vrši uglastim zagradama:

 x[1]

izvlači prvi element iz x.

komanda:

 x[1, 3]

Izdvaja element u prvom redu i trećoj koloni matrice ili okviru podataka

Indeksiranje takođe uključuje zamenjivanje delića objekta. Komanda:

 x[1] <->

će promeniti prvi element x do 9.

Više o R indeksima

slučajna generacija

Postoji niz funkcija koje proizvode slučajnosti. Na primer, komanda:

 runif(9)

kreira vektor od 9 brojeva koji su ravnomerno raspoređeni između 0 i 1. Dobićete različite odgovore od ove komande ako je ponovite

Više o R slučajnostima

ggrafike

Stvaranje zapleta je još jedna stvar koja može da se uradi.O ovome se diskutuje kasnije u grafičkom delu.

Više o R ključnim akcijama

učitavanje podataka u R

Prenos podataka sa jednog mesta na drugo je uvek praćeno opasnošću. Očekujući da to uvek prodje glatko sami sebi samo smeštate razočarenje. Ali ponekad skladištanje podataka u R ide glatko.

Ako pokušavate da dobijete pravougaone podatake (nešto što liči na matricu ili okvir podataka) onda read.table funkcija ili jedna od njenih rođaka će biti ono što želite da koristite. Ova funkcija vraća okvir podataka. Napomena: okvir podatake, a ne matricu

Takođe, postoje funkcije za čitanje više proizvoljnih podataka.

Više o R učitavanju podataka

Uočavanje Objekta

Pogledaćemo na dva aspekta uočavanja objekta:

  • štampanje objekta
  • gledanje koji objekti postoje

štampanje

Da biste odštampali objekat nazvan x, možete da uradite:

 > print(x)

Ili jednostavno možete dati ime objektu:

 > x

Kada je zadatak je napravljen, onda se rezultat ne štampa automatski. Dakle:

 > mean(x)

ctera R da odštampa rezultat (a zatim vam nagovesti) ali:

 > meanx <->

čini da vam R nagovesti

lista postojećih objekata

Da biste videli imena objekata u globalnom okruženju vašeg trenutnog rada, uradite:

 > ls()

Još o R uočavanju predmeta

Čuvanje objekata

Možda ćete želeti da sačuvate objekat ili da ga ponovo koristiti u R, ili da kreirate datoteku koja sadrži podatke o objektu da biste koristili za neki drugi program.

sačuvate R objekat

ako želite da sačuvate objekat, tako da možete da ga koristite u narednim R sesija, možete da:

 > save(x, file="x.rda")

U novom sazivu onda možete da priložite datoteku:

 > attach("x.rda")

Ovo će napraviti da objekat (s) u datoteci (x u ovom slučaju) bude dostupan u novom radu.

napisati fajl za drugi program

Da biste stvorili datoteku koja sadrži sadržaj matrice ili okvire podataka, koristite:

 > write.table(x, file="x.txt")

Pogledaj Graphics za čuvanje grafike.

Više o R čuvanju objekata

Greške i slično

Ponekad, verovatno uskoro, izaćiće vam greška u R.

Nagoveštaj: univerzum de ne skupilja u singularitet samo zbog jedne greške u R. Zapravo, gradi karakter - videti Napravite greške namerno

R proizvodi greške i upozorenja. Igreške i upozorenja pišu poruku - razlika je u tome da greške sadrže izvršenje komande, ali opomene ne.

Kategorisaćemo greške u tri tipa: sintaksne greške, objekat-nije -pronadjen greške, i sve ostalo

sintaksne greške

Ako dobijete grešku u sintaksi, onda ste uneli komandu koju R ne može da razume. Generalno ouruka o grešci je prilično dobra pri ukazivanju na približnu tačku u komandi, gde je greška.

Vrlo česte sintaksne greške su nedostatak zareza, zagrade koje se ne podudaraju, kao i pogrešan tip zagrade za zatvaranje [npr., uvodna uglaste zagrade, ali za zatvaranje obična).

objekat nije pronađen

Greške sorte objekat-nije-pronađen mogu imati jedan od nekoliko razloga:

  • ime nije napisano pravilno, ili je pogrešno naglašeno veliko slovo
  • paket ili fajl koji sadrži objekat nije na listi pretrage
  • nešto drugo (pustite mašti na volju)

druge greške

Postoje beskrajno drugih načina za dobijanje grešaka. Otuda ide to da je neki detektivski rad generalno potreban - mislite o tome kao ukrštenica koji treba rešavanje:

Mislim da bi to trebalo da postane refleksna reakcija na tip

 > traceback()

kadgod dođe do greške

Rezultati možda ne znači mnogo za vas u ovom trenutku, ali će značiti u nekom .Traceback vam govori koje su funkcije na snazi za vreme greške. Ovo vam može dati nagoveštaj o tome šta je pošlo po zlu.

upozorenja

Upozorenje nije tako ozbiljna kao greška u komandi koja prolazi do kraja.Ali, to može da znači da ignorisanje upozorenja može biti vrlo, vrlo ozbiljna stvar ako vam sugeriše da je odgovor ste dobili bio lažna grešaka.

To je dobra prilika da razumete poruke upozorenja da vidite da li one ukazuju na pravi problem ili ne.

Više o R greškama i slično.

grafika

Da bi imali sliku, mora platno za to da vam bude uključeno. U istraživanju su to platno zove "grafički uređaj". Ako amo pravite grafiku interaktivno, ne morate da brinete o grafičkim uređajima - R će početi uređaj koji se podrazumeva za vas. Ako želite da sačuvate grafike da delite, onda ćete morati da odlučite o grafičkom uređaju.

Osnovna funkcija za kreiranje grafikona je plot. Često će komanda poput:

 > plot(x)

raditi. To možda neće biti slika koju ste najviše želeli da vidite, ali makar često to čini nešto polu-razumno.

Zaplet ne treba da budu stvoren u jednoj komandi - možete dodati zaplete.Na primer:

 > abline(0, 1)

dodajte liniju nagiba 1 i presretnite 0 do trenutnog zapleta (ali, u zavisnosti od zapleta, možda neće biti vidljiv).

Magične funkcije, magični predmet

Neke funkcije su magija i neki objekti su magčni. (Imajte na umu da magija NIJE tehnički termin.)

Objekti koji imaju "klasu" su magični.

Funkcije koje su "generičke" su magične funkcije.

Kada koristite generičku funkciju, ona pazi na klasu svog argumenta.Koja se zapravo reakcija dešava zavisi od klase.

Dve funkcije gore pomenute su generičke: print i plot. Okviri podataka i faktori su svaki štampani na svoj poseban način, jer je štampanje generičko, a okviri podataka i faktori imaju svoju klasu.

Dobra stvar u tome što je print generičko je što vidiš važne aspekte objekta.

Loša stvar u vezi toga što je print generičko je da lako možete da pomislite da vidite pravi objekat. U stvarnosti zapravo vidite autoportret objekta kojeg želite da vidite.

više o R magiji

Vektorizacija

R je vektor jezik. Mala je verovatnoća da će objekat biti samo jedan broj ili karakter reda ili logička vrednost. Verovatnije je da će biti više vrednosti objekta --ponekad na desetine, ponekad i milione

Vektorizacija je kada operacija tretira objekat kao celinu, a ne tretira posebno svaku vrednost. Na primer:

 > x + 2

dodaje 2 svakoj vrednosti u x. Nije bitno da li je jedna vrednost u x ili dve hiljade.

Više o R Vectorizaciji

Napravite greške namerno

Praviti greške koristeći R. Ovo je eksperiment.To je ono što profesionalci rade.

Dve koristi od eksperimentisanje su:

  • Vi naučite kako stvari funkcionišu (često opravdano efikasno)
  • Možete naučiti da održite ravnotežu kada nešto krene naopako

Više o namernim greškama u R

Neki tipovi datoteka

R ne obraća pažnja na produžetke na imenima datoteka. Međutim, postoje zgodnosti koje čine stvari lakše za nas ljude.

 

extension .rda .R .txt .csv
created by   save   an editor   write.table
used by   attach load   source   read.table
  explanation   R objects   R commands   data

R.files takođe može biti kreirani unutar R,pored odlagališta

Fajlovi pod nazivom .RData su isti kao .rda fajlovi.

Neke datoteke koje bi logično bile .R files zapravo imaju .q produžetke--još duga priča..

ESS (videti više o R računarskom okruženju ) stvara .rt files for "R Transcript".

Kako čitati datoteku za pomoć

Ako želite pomoć za mean funkciju, možete da uradite:

 > ?mean

Nuspojava ove komande je da vam pokaže datoteku za pomoć.

Prva tačka o datoteci za pomoći je da oni nisu romani. Ne treba da se osećate primoranim da ih pročitam od početka do kraja. fajlu za pomoć.)

Možda neće biti mudro da od sebe očekujete da razumete sve pre nego što upotrebite funkciju. Isprobajte sve, vidite da li izgleda kao da će biti korisno za vas, tek tada bi trebalo da uložite mnogo vremena za razumevanja detalja.

Više o datoteka za pomoć

Paketi

Par paketa je priloženo pri pokretanju R. Možete da priložite više u sesiji. Postoji nekoliko preporučenih pakete koji dolaze sa R, ali obično nisu vezani automatski.

Da biste videli pakete koji su vam na raspolaganju, uradite:

 > library()

Ova komanda prikazuje listu paketa na vašem računaru (u standardnom mestu).

Postoji veliki broj paketa raštrkanih po internetu. Pre svega tu je CRAN --glavni nosilac doprinelih R paketa.

Ako želite da koristite CRAN paket koji nije na vašem računaru, potrebno je da ga preuzmete Na primer, ako želite fortunes paket, uradite:

 > install.packages("fortunes")

(Komanda iznad funkcioniše samo ako vaša mašina ima pristup internetu). Potrebno je da samo jednom instalirate paket.

Za korišćenje , potrebno je da ga priključite sesiji:

 > require(fortunes)

Treba da stvorite komandu require za paket u svakoj sesiji u kojoj želite da ga koristite.

još R paketima

Potraga za funkcionalnošću

Nešto što ćete mnogo raditi u pretrazi je kako da uradite neki poseban zadatak u R. Početnici nisu sami u ovome. Iskusni korisnici moraju da pretražuju takodje-- R je živo, biće koje se razvija.

Mislite o tome kao lov na blago

Više o R pretraga

Zablude zbog prethodnog jezika

Možete koristiti vašu moć poznavanja drugih jezika i programa kao pomoć pri učenju.Ali su to obično zamke. Može biti razlika, ponekad suptilnih, koji će vas odvesti niz pogrešan put.

R iz statističkih paketa.

Kompjuterske sredine koje pripomažu

R ne bi trebalo da bude ostrvo. Vaše korišćenje R će biti deo većeg zadatka. Ljudi su otkrili da imati editora koji je svestan R olakšava okruženje celog zadatka.

Više o R kompjuterskom okruženju

Neki drugi dokumenti

Postoje brojna dodatne mesta gde možete naučiti o R. Vaše veštine pretraživanja će vam pomoći da ih nadjete. Evo nekoliko izabranih:

websites

Postoje nekoliko sajtova koji se izgleda izdvajaju za početnike

Quick-R

Rtips

Apsolutno najzanimljiviji sajt je Try R at Code School.

Tu je i set videa od dva minuta nazvani R twotorials

R resursi za početnike

books

Predstavljanje R

Ako razmišljate o kupovini knjiga o R, koju je najbolje nabaviti zavisi od vašeg znanja i šta želite da uradite sa R. Postoji veliki broj izbora, broj koji neprestano raste.

Još o ulasku u R svet se nalazi na R for Dummies נBurns Statistics links page.

R-help mejling lista

R help mejling lista je izvor informacija i pomoći (kao ime kaže).

Čitajući (nešto od) R -pomoći će biti edukativno sredstvo..

Pisanje poruke R help-u treba da bude poslednje rešenje.Ako napišete poruku i vi ne poštujete pravila, trebalo bi očekivati grubu vožnju.

Više o R-help

R Rečnik

Dobro je znati terminologiju na bilo kom polju. To olakšava:

  • učenje koncepata
  • komuniciranje sa drugima
  • postaje vam mnogo udobnije

žargon

Epilog

R početniče, R novajlijo , R iskušeniku--koja god etiketa da vam se svidja- - cilj ovog vodiča je da vam pomogne da dodjete odatle do R korisnika što brže i bezbolnije moguće.

Ovog dokument je stvoren od strane komentara brojnih ljudi kojima sam veoma zahvalan.Ako imate bilo kakve predloge za poboljšanja koji bi mogla umanjiti patnje onih kojima to sledi, pišite mi.

Published (Last edited): 30-09-2012 , source: http://www.burns-stat.com/documents/tutorials/impatient-r/