Módszertani kézikönyv "Adatok statisztikai elemzése és megjelenítése R segítségével". Módszertani útmutató "Statisztikai elemzés és adatvizualizáció R-vel" Mit kell tudni a tanfolyam meghallgatásához

Tanfolyami program

Az R programozási elemei

  • Leíró statisztikák és vizualizáció
  • Például mi a fontosabb: egy átlagos csekk vagy egy tipikus csekk?

klaszteranalízis

  • Milyen probléma van megoldva. Oszd fel az objektumok egy csoportját alcsoportokra.
  • Feladat példa. Lelőhelyek szegmentálása, hasonló lelőhelyek azonosítása.
  • Tanulmányozott módszerek. Hierarchikus klaszteranalízis, k-means módszer, k-medoid módszer.

Statisztikai hipotézisek tesztelése

  • Milyen probléma van megoldva. Hasonlítsa össze az objektumok két csoportját.
  • Feladat példa. A/B felhasználói viselkedés tesztelése bekapcsolva különböző verziók oldalak.
  • Tanulmányozott módszerek. Arányteszt, Student-t-próba, Levine-t-próba, Wilcoxon-Mann-Whitney-teszt

Lineáris regressziós elemzés.

  • Feladat példa. Becsülje meg, mennyivel csökkentek a használt autók árai a vámok emelése után.
  • Tanulmányozott módszerek. Változó szelekció, kollinearitás, befolyásoló megfigyelések, maradékelemzés. Nem paraméteres regresszió (kernelsimítás). Rövid sorozatok előrejelzése szezonális komponenssel lineáris regresszióval

Előrejelzés

  • Milyen probléma van megoldva. Építési idősor előrejelzés
  • Feladat példa. Jósolja meg a webhely forgalmát 6 hónapra előre.
  • tanulmányozott módszer. Exponenciális simítás

Gépi tanulás (mintafelismerés)

  • Feladat példa. Ismerje fel az egyes webhelylátogatók nemét és életkorát
  • Tanulmányozott módszerek. k-legközelebbi szomszéd módszer Osztályozási fák (CART). Véletlen erdők. gradiensnövelő gép

Tanfolyami osztályzatok

A diákok 14-et kapnak laboratóriumi munka. A kurzus osztályzata a következő szabály szerint kerül megállapításra:

  • Kiváló – minden mű jóváírásra kerül;
  • Jó - az összes mű jóváírásra került, egy kivételével?;
  • Kielégítő – kettő kivételével minden mű jóváírásra került;
  • Nem kielégítő - más esetekben.

A laboratóriumi munka az

  • a hallgató kap egy adatsort és egy kérdést;
  • a hallgató válaszol a kérdésre, állításait táblázatokkal, grafikonokkal és R nyelven írt szkripttel támasztja alá;
  • a hallgató további kérdésekre válaszol.

Kérdés példa. Javasoljon olyan paramétereket, amelyek biztosítják a Random Forest algoritmus optimális teljesítményét egy bormárka felismerésekor a kémiai elemzés eredményei alapján.

Amit a tanfolyam elvégzéséhez tudnod kell

Feltételezzük, hogy a kurzus résztvevői már elvégeztek egy valószínűségszámítási kurzust.

Irodalom

  • Shipunov, Baldin, Volkova, Korobeinikov, Nazarova, Petrov, Sufiyanov Vizuális statisztika. R segítségével
  • Masztitszkij, Shitikov Statisztikai analízisés adatvizualizáció R-vel
  • Bishop mintafelismerés és gépi tanulás.
  • James, Witten, Hastie, Tibshirani. Bevezetés a statisztikai tanulásba. Alkalmazásokkal az R-ben.
  • Hastie, Tibshirani, Friedman. A statisztikai tanulás elemei_ adatbányászat, Következtetés és Előrejelzés 2+ed
  • Crawley. Az R könyv.
  • Kabacoff R akcióban. Adatelemzés és grafika R-vel.

tanárok

Előadások listája

Bevezetés az R-be: alapvető parancsok. Medián, kvantilisek és kvartilisek. Oszlopdiagram. Oszlopdiagram. Kördiagram. Szórási diagram. Szórványmátrix. A színek használata a diagramon. Dobozok pofaszakállal (dobozábra). Tipikus mintamegfigyelés: számtani átlag, medián vagy kivágott átlag. Az elemzett adatoknak megfelelő tipikus érték leírási módszerének megválasztása. lognormális eloszlás. Kibocsátások és szélsőséges megfigyelések.

Hierarchikus klaszterelemzés. Klaszter, objektumok közötti távolságok, klaszterek közötti távolságok. Algoritmus dendrogram felépítéséhez. Esztrich/könyök. Adatok szabványosítása. Tipikus hibák az adatok előkészítésében. Az eredmények értelmezése.

k-módszer. Véletlenszámú érzékelők, szenzorszemcsék. A k-közép algoritmus megjelenítése. A klaszterek számának meghatározására szolgáló módszerek. NbClust könyvtár. Esztrich/könyök. Többdimenziós skálázás a klaszterek megjelenítéséhez.

Statisztikai hipotézisek tesztelése. Egyezési, homogenitási, függetlenségi hipotézisek, hipotézisek az eloszlási paraméterekről.

Statisztikai hipotézisek tesztelése. Első és második típusú hibák, p-érték és szignifikancia szint, a statisztikai hipotézis tesztelésének algoritmusa és az eredmények értelmezése. A normális eloszlás hipotézise. Shapiro-Wilk és Kolmogorov-Smirnov kritériumok. Kisebb eltérések a normálistól. A minták összehasonlítása. Független és párosított minták. Választhat a Student-féle t-teszt, a Mann-Whitney-Wilcoxon-teszt és a Mood-teszt között. A Student-féle t-próbák változatai és az eltérések összehasonlítása. Vizualizáció összehasonlításban. Egy- és kétoldalas tesztek.

Statisztikai hipotézisek tesztelése. A minták összehasonlítása. Független és párosított minták. Választhat a Student-féle t-teszt, a Mann-Whitney-Wilcoxon-teszt és a Mood-teszt között. A Student-féle t-próbák változatai és az eltérések összehasonlítása. Vizualizáció összehasonlításban. Egy- és kétoldalas tesztek. Függetlenség. Pearson, Kendall és Spearman korrelációs együtthatók, tipikus hibák két jelenség kapcsolatának vizsgálatában. A következtetések vizuális ellenőrzése.

Lineáris regresszióanalízis Modell, együtthatóbecslések értelmezése, többszörös determinációs együttható. A többszörös determinációs együttható értelmezése, alkalmazási körének korlátozása. A legjelentősebb prediktorok azonosítása és az egyes prediktorok hozzájárulásának értékelése. Algoritmusok a felépített modellek javítására. Kollinearitás.

Lineáris regressziós elemzés: Rövid idősorok előrejelzése.

Előrejelzés regressziós modell alapján szezonális indikátor (dummy, strukturális) változókkal. Trend, szezonális összetevők, sorozatváltás, kiugró értékek. A logaritmus egy technika a multiplikatív szezonalitás additívvá alakítására. indikátor változók. Átképzés.

Lineáris regresszió – maradékelemzés. A Gauss-Markov-tétel modellkényszereinek megsértése. Maradékelemzés. Specifikációs hiba. Multikollinearitás, tolerancia és VIF. A maradékok szórásának állandóságának ellenőrzése. Modellek korrekciója a maradványok normalitástól való eloszlásának eltérései esetén. Főzési távolság és tőkeáttétel. Durbin-Watson statisztika. A szezonális kiigazítások számának csökkentése.

Exponenciális simítás A Holt "a-Winters" módszer. Helyi trend, helyi szezonalitás.

Terminológia: gépi tanulás, mesterséges intelligencia, adatbányászat és mintafelismerés.

k-adik legközelebbi szomszéd módszer. A módszer konzisztenciája. Lusta tanulás (lusta tanulás). Funkció kiválasztása. Keresztellenőrzés. k-szeres keresztellenőrzés. Túlillesztés (túlzott illeszkedés). Képzési és tesztkészletek.

k-adik legközelebbi szomszéd módszer Példák. A legközelebbi szomszédok számának meghatározása. Kontingencia táblázat a módszer minőségének meghatározásához.

CART osztályozási fák. Geometriai ábrázolás. Az ábrázolás mint logikai szabályok összessége. Fa ábrázolása. Csomópontok, szülők és gyerekek, végcsomópontok. Küszöbértékek. rpart könyvtár. Csomóponti szennyeződés mértéke. Tisztaságmérési módszerek: Gini, entrópia, osztályozási hibák. A tanulási fa leállításának szabályai. rpart.plot könyvtár.

Múltkor (2014 novemberében; nagyon szégyellem, hogy ilyen sokáig tartottam a folytatással!) az R nyelv alapvető tulajdonságairól beszéltem.Az összes szokásos vezérlőkonstrukció, mint a hurkok és feltételes blokkok jelenléte ellenére a az iteráción alapuló adatfeldolgozás klasszikus megközelítése messze nem A legjobb döntés, mivel ciklusok R-ben rendkívüli módon lassú. Tehát most elmondom, hogyan kell ténylegesen dolgozni az adatokkal, hogy a számítási folyamat ne kényszerítsen túl sok csésze kávét az eredményre várva. Ezen kívül el fogok szánni egy kis időt a korszerű adatvizualizációs eszközök használatára az R-ben. Mivel az adatfeldolgozás eredményeinek gyakorlati bemutatásának kényelme nem kevésbé fontos, mint maguk az eredmények. Kezdjük egyszerűen.

Vektoros műveletek

Emlékszünk rá, hogy az R-ben az alaptípus egyáltalán nem szám, hanem vektor, és az alapvető aritmetikai műveletek elemenként hatnak a vektorokra:

> x<- 1:6; y <- 11:17 >x + y 12 14 16 16 18 20 22 18 18> x> 2 false false true true true> x * y 11 24 39 56 75 96 17> x / y 0.09090909 0.166666666660.28571429 0.33333333 0.37500000 0.0588235353

Itt minden nagyon egyszerű, de teljesen logikus feltenni a kérdést: mi lesz, ha a vektorok hossza nem egyezik? Ha mondjuk k-t írunk<- 2, то будет ли x * k соответствовать умножению вектора на число в математическом смысле? Короткий ответ - да. В более общем случае, когда длина векторов не совпадает, меньший вектор просто продолжается повторением:

>z<- c(1, 0.5) >x * z 1 1 3 2 5 3

Ugyanez igaz a mátrixokra is.

> x<- matrix(1:4, 2, 2); y <- matrix(rep(2,4), 2, 2) >x * y [,1] [,2] 2 6 4 8 > x / y [,1] [,2] 0,5 1,5 1,0 2,0

Ebben az esetben a „normál”, és nem bitenkénti mátrixszorzás így fog kinézni:

> x %*% y [,1] [,2] 8 8 12 12

Mindez persze nagyon jó, de mit tegyünk, ha vektorok vagy mátrixok elemeire saját függvényeket kell alkalmazni, vagyis hogyan lehet ezt ciklus nélkül megtenni? Az R által a probléma megoldására használt megközelítés nagyon hasonló ahhoz, amit a funkcionális nyelvekben megszoktunk – mindez a Python vagy a Haskell térképfunkciójára emlékeztet.

Hasznos lapply és barátai funkció

Az első funkció ebben a családban a lapply . Lehetővé teszi egy adott függvény alkalmazását egy lista vagy vektor minden elemére. Sőt, az eredmény pontosan a lista lesz, függetlenül az argumentum típusától. A lambda függvények legegyszerűbb példája:

> q<- lapply(c(1,2,4), function(x) x^2) >q 1 4 16

Ha a listára vagy vektorra alkalmazandó függvény egynél több argumentumot igényel, akkor ezek az argumentumok a lapply segítségével továbbíthatók.

> q<- lapply(c(1,2,4), function(x, y) x^2 + y, 3)

Listával a függvény hasonló módon működik:

> x<- list(a=rnorm(10), b=1:10) >lapply(x, átlag)

Itt az rnorm függvény egy normális eloszlást ad meg (ebben az esetben tíz normális eloszlású számot 0 és 1 között), az átlag pedig az átlagot számítja ki. Az apply függvény pontosan ugyanaz, mint a lapply függvény, kivéve, hogy megpróbálja leegyszerűsíteni az eredményt. Például, ha a lista minden elemének hossza 1, akkor a lista helyett egy vektort ad vissza a rendszer:

> apply(c(1,2,4), function(x) x^2) 1 4 16

Ha az eredmény egy azonos hosszúságú vektorok listája, akkor a függvény egy mátrixot ad vissza, ha semmi sem világos, akkor csak egy listát, például lapply .

> x<- list(1:4, 5:8) >sapply(x, függvény(x) x^2) [,1] [,2] 1 25 4 36 9 49 16 64

A mátrixokkal való munkavégzéshez kényelmes az alkalmazás funkció használata:

> x<- matrix(rnorm(50), 5, 10) >alkalmaz(x, 2, átlag) > alkalmaz(x, 1, összeg)

Itt először egy öt sorból és tíz oszlopból álló mátrixot készítünk, majd először kiszámítjuk az oszlopok átlagát, majd a sorok összegét. A kép teljessége érdekében meg kell jegyezni, hogy a sorok átlagának és összegének kiszámítási feladatai annyira elterjedtek, hogy R speciális függvényeket biztosít erre a célra rowSums , rowMeans , colSums és colMeans .
Az apply függvény többdimenziós tömbökhöz is használható:

> arr<- array(rnorm(2 * 2 * 10), c(2, 2, 10)) >alkalmazni(arr, c(1,2), átlag)

Az utolsó hívás lecserélhető egy olvashatóbb verzióra:

> sorMeans(arr, dim = 2)

Térjünk át a mapply függvényre, amely a lapply többdimenziós analógja. Kezdjük egy egyszerű példával, amely közvetlenül a szabványos R dokumentációban található:

> mapply(rep, 1:4, 4:1) 1 1 1 1 2 2 2 3 3 4

Mint látható, itt a rep függvényt két sorozatból előállított paraméterkészletre alkalmazzuk. Maga a rep függvény egyszerűen megismétli az első argumentumot annyiszor, ahányszor a második argumentumként van megadva. Tehát az előző kód egyszerűen egyenértékű a következővel:

> list(rep(1,4), rep(2,3), rep(3,2), rep(4,1))

Néha szükséges egy függvényt alkalmazni egy tömb valamely részére. Ezt a tapply funkcióval lehet megtenni. Tekintsük a következő példát:

> x<- c(rnorm(10, 1), runif(10), rnorm(10,2)) >f<- gl(3,10) >tapply(x,f,mean)

Először létrehozunk egy vektort, amelynek részeit képezzük Véletlen változók eltérő eloszlással, akkor generálunk egy faktorvektort, ami nem több, mint tíz egyes, majd tíz kettes és ugyanennyi hármas. Ezután kiszámítjuk a megfelelő csoportok átlagát. Az alapértelmezett tapply funkció megpróbálja leegyszerűsíteni az eredményt. Ez az opció kikapcsolható a simplify=FALSE paraméterként történő megadásával.

> tapply(x, f, range, simplify=FALSE)

Amikor applikációs függvényekről beszélünk, általában az osztott függvényről is beszélünk, amely a vektort részekre osztja, hasonlóan a tapply-hoz. Tehát, ha meghívjuk a split(x, f)-t, akkor egy három vektorból álló listát kapunk. Tehát a lapply / split pár ugyanúgy működik, mint a tapply, ha az egyszerűsítés FALSE-ra van állítva:

> lapply(split(x, f), mean)

A felosztási funkció a vektorokkal végzett munkán kívül is hasznos: adatkeretekkel is dolgozhatunk vele. Tekintsük a következő példát (a Coursera R programozási kurzusából kölcsönöztem):

> könyvtár(adatkészletek) > fej(levegőminőség) Ozone Solar.R Wind Temp Hónap 1 41 190 7,4 67 5 1 2 36 118 8,0 72 5 2 3 12 149 12,6 74 5 3 4 18 NA 543 3 56 5 5 6 28 NA 14,9 66 5 6 > s<- split(airquality, airquality$Month) >lapply(s, function(x) colMeans(x[, c("Ózon", "Solar.R", "Wind")]))

Itt egy olyan adatkészlettel dolgozunk, amely információkat tartalmaz a levegő állapotáról (ózon, napsugárzás, szél, hőmérséklet Fahrenheitben, hónap és nap). Könnyedén jelenthetjük a havi átlagokat a kódban látható split és lapp használatával. A sapply használata azonban kényelmesebb eredményt ad:

> apply(s, function(x) colMeans(x[, c("Ózon", "Solar.R", "Wind")]))) 5 6 7 8 9 Ózon NA NA NA NA NA Solar.R NA 190.16667 216.483871 NA 167,4333 Szél 11,62258 10,26667 8,941935 8,793548 10,1800

Mint látható, a mennyiségek egyes értékei nincsenek meghatározva (és ehhez az NA fenntartott értéket használják). Ez azt jelenti, hogy néhány (legalább egy) érték az Ozone és a Solar.R oszlopban szintén nem került meghatározásra. Ebben az értelemben a colMeans függvény teljesen helyesen viselkedik: ha vannak definiálatlan értékek, akkor az átlag definiálatlan. A probléma úgy oldható meg, hogy a függvényt a na.rm=TRUE paraméterrel az NA értékek figyelmen kívül hagyására kényszerítjük:

>alkalmaz(ok, függvény(x) colMeans(x[, c("Ózon", "Solar.R", "Wind")], na.rm=IGAZ Solar.R 181,29630 190,16667 216,483871 171,857143 167,43333 Szél 11,62258 10,26667 8,941935 8,7935188 0010

Miért van szükség ennyi funkcióra a nagyon hasonló feladatok megoldásához? Szerintem minden második ember feltesz ilyen kérdést, aki elolvasta mindezt. Mindezek a függvények valójában a vektoros adatok hurkok használata nélküli feldolgozásának problémáját próbálják megoldani. De egy dolog nagy feldolgozási sebességet elérni, és egészen más, hogy legalább egy részét megszerezzük annak a rugalmasságnak és vezérlésnek, amelyet a hurkok és feltételes utasítások biztosítanak.

Adatvizualizáció

Az R rendszer szokatlanul gazdag adatvizualizációs eszközökben. És itt nehéz választás előtt állok – miről beszéljek, ha ekkora a terület. Ha a programozásnál van néhány alapvető funkciókészlet, amely nélkül semmit sem lehet csinálni, akkor a vizualizációban rengeteg különböző feladat létezik, és mindegyik (általában) többféleképpen is megoldható. aminek megvannak az előnyei és hátrányai. Sőt, mindig sok lehetőség és csomag létezik, amelyek lehetővé teszik, hogy ezeket a problémákat különféle módon megoldja.
Sokat írtak a szabványos rendererekről az R-ben, ezért itt egy érdekesebb dologról szeretnék beszélni. Az utóbbi években a csomag egyre népszerűbb lett. ggplot2, beszéljünk róla.

A ggplot2 használatának megkezdéséhez telepítenie kell a könyvtárat az install.package("ggplot2") paranccsal. Ezután csatlakoztatjuk a használathoz:

> könyvtár("ggplot2") > fej(gyémántok) karátos vágás színtisztaság-mélység táblázat ára x y z 1 0,23 Ideális E SI2 61,5 55 326 3,95 3,98 2,43 2 0,21 Prémium E SI1 59,8 61 326 VS E SI1 59,8 61 326 .59,8 61 326 ,5 326 . 4,07 2,31 4 0,29 Premium I VS2 62,4 58 334 4,20 4,23 2,63 5 0,31 Good J Si2 63,3 58 335 4,34 4,35 2,75 6 0,24 nagyon jó J VVS2 62.8 3,94 3,96 2.48> Fej (MTCARS) MPG CLA. 110 3,90 2,620 16.46 0 1 4 4 Mazda RX4 WAG 21.0 6 160 110 3,9 2,875 17,02 0 1 4 Datsun 710 22,8 4 108 93 3,85 2.320 18,61 1 4 1 Hornet 4 meghajtó 68 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110 110. 110 110 110 110 110 110 110 110 110 110 110 110 110 110 3,08 3,215 19,44 1 0 3 1 Hornet Sportabout 18,7 8 360 175 3,15 3,440 17,02 0 0 3 2 Valiant 18,1 6 225 105 2.76 3,460 20,22 1 0 3 1

A gyémántok és az mtcars adatok a ggplot2 csomag részét képezik, és most ezekkel fogunk dolgozni. Az elsőnél minden világos – ezek a gyémántokra vonatkozó adatok (tisztaság, szín, költség stb.), a második pedig az autók közúti tesztjeinek adatait (mérföld/gallon, hengerek száma...) 1973-1974 között a Motor Trends amerikai magazintól. Az adatokkal (például méretekkel) kapcsolatos további információk a?diamonds vagy?mtcars beírásával szerezhetők be.

A vizualizációhoz a csomag számos funkciót biztosít, amelyek közül most a qplot lesz a legfontosabb számunkra. A ggplot függvény sokkal nagyobb irányítást biztosít a folyamat felett. Minden, amit meg lehet tenni a qplot-tal, megtehető a ggplot-tal is. Fontolja meg egyszerű példa:

> qplot(tisztaság, adatok=gyémántok, fill=vágás, geom="bar")

Ugyanez a hatás érhető el a ggplot függvénnyel:

> ggplot(gyémántok, aes(tisztaság, kitöltés=vágás)) + geom_bar()

A qplot meghívása azonban egyszerűbbnek tűnik. ábrán. Az 1. ábrán láthatja, hogyan épül fel a különböző vágásminőségű (vágás) gyémántok számának a tisztaságtól (tisztaságtól) való függése.

Most építsük fel az autók üzemanyagegységenkénti futásteljesítményének tömegétől való függőségét. Az eredményül kapott szórásdiagram (vagy szórásdiagram szórványrajz) képviselteti magát
ábrán. 2.

> qplot(wt, mpg, data=mtcars)

Hozzáadhatja a negyed mérföldes gyorsulási idő (qsec) színes kijelzőjét is:

> qplot(wt, mpg, data=mtcars, color=qsec)

A vizualizálás során az adatokat is átalakíthatja:

> qplot(log(wt), mpg - 10, data=mtcars)

Egyes esetekben a diszkrét színosztás inkább reprezentatívnak tűnik, mint a folyamatos. Például, ha a hengerek számáról szeretnénk információt színesben megjeleníteni a gyorsulási idő helyett, akkor jeleznünk kell, hogy az érték diszkrét (3. ábra):

> qplot(wt, mpg, data=mtcars, color=faktor(cyl))

A pontok méretét is módosíthatja, például a size=3 használatával. Ha fekete-fehér nyomtatón kíván grafikonokat nyomtatni, akkor jobb, ha nem használ színeket, hanem a tényezőtől függően változtatja meg a marker alakját. Ezt úgy teheti meg, hogy a color=factor(cyl) helyett a shape=factor(cyl) karakterláncot.
A telek típusát a geom paraméterrel adjuk meg, szórt diagramok esetén pedig ennek a paraméternek az értéke "pontok" .

Most tegyük fel, hogy csak egy hisztogramot akarunk készíteni az autók számáról a megfelelő hengerértékkel:

> qplot(faktor(cyl), adat=mtcars, geom="bar") > qplot(faktor(cyl), data=mtcars, geom="bar", color=faktor(cyl)) > qplot(faktor(cyl) , data=mtcars, geom="bar", fill=factor(cyl))

Az első hívás egyszerűen három hisztogramot rajzol a különböző hengerértékekhez. Azt kell mondanom, hogy a hisztogram színének első kísérlete nem vezet a várt eredményhez - a fekete sávok továbbra is feketék lesznek, csak színes körvonalat kapnak. De a qplot utolsó hívása gyönyörű hisztogramot hoz létre, amint az az ábrán látható. 4.

Itt kellene némi világosság. A helyzet az, hogy az általunk épített jelenlegi objektum nem hisztogram a szó szoros értelmében. Általában a hisztogram alatt a folyamatos adatok hasonló megjelenítését értjük. Angolul oszlopdiagram(ezt csináltuk most) és hisztogram két különböző fogalom (lásd a vonatkozó Wikipédia-cikkeket). Itt némi elkeseredett szívvel a „hisztogram” szót fogom használni mindkét fogalomra, hisz az adatok természete önmagáért beszél.

Ha visszatérünk az ábrához. 1, a ggplot2 számos hasznos lehetőséget kínál a plot pozicionálására (az alapértelmezett érték position="stack"):

> qplot(tisztaság, adatok=gyémántok, geom="bar", fill=cut, position="kitérő") > qplot(tisztaság, adat=gyémántok, geom="bar", fill=cut, position="fill") > qplot(tisztaság, adatok=gyémántok, geom="bar", fill=cut, position="identity")

A javasolt lehetőségek közül az első diagramokat épít egymás mellé, amint az az ábrán látható. Az 5. ábrán a második a különböző csiszolású gyémántok részarányát mutatja az adott tisztaságú gyémántok teljes számában (6. ábra).

Most nézzünk meg egy példát egy valódi hisztogramra:

> qplot(karát, adat=gyémántok, geom="hisztogram", sávszélesség=0,1) > qplot(karát, adat=gyémántok, geom="hisztogram", sávszélesség=0,05)

Itt a sávszélesség paraméter csak azt mutatja, hogy milyen széles a sáv a hisztogramban. A hisztogram megmutatja, hogy melyik tartományban mennyi adat van. Az eredményeket az ábrán mutatjuk be. 7. és 8.

Néha, amikor egy modellt kell felépíteni (lineáris vagy mondjuk polinom), megtehetjük a qplot-ban, és láthatjuk az eredményt. Például ábrázolhatjuk az mpg-t a tömeg-wt-val szemben közvetlenül a szórásdiagram tetején:

> qplot(wt, mpg, data=mtcars, geom=c("pont", "sima"))

Alapértelmezés szerint a helyi polinomiális regresszió (method="loess") lesz modellként. A munka eredménye az ábrán látható módon fog kinézni. 9, ahol a sötétszürke sáv a standard hiba. Alapértelmezés szerint megjelenik, a megjelenítését a se=FALSE írással kapcsolhatod ki.

Ha meg akarunk próbálni ezen az adatokon lineáris modellt nyújtani, akkor ezt egyszerűen a method=lm megadásával tehetjük meg (10. ábra).

És végül természetesen meg kell mutatnia, hogyan kell kördiagramokat felépíteni:

>t<- ggplot(mtcars, aes(x=factor(1), fill=factor(cyl))) + geom_bar(width=1) >t + coord_polar(theta="y")

Itt a rugalmasabb ggplot függvényt fogjuk használni. Ez így működik: először készítünk egy grafikont, amely megjeleníti a különböző hengerszámú autók arányát a teljes tömegben (11. ábra), majd a grafikont lefordítjuk polárkoordinátákra (12. ábra).

Konklúzió helyett

Most már rájöttünk az R használatára. Mi a következő lépés? Nyilvánvaló, hogy itt megadjuk a ggplot2 legalapvetőbb jellemzőit, és áttekintjük a vektorizálással kapcsolatos kérdéseket. Van néhány jó könyv az R-ről, amelyeket érdemes megemlíteni, és ezekben minden bizonnyal többet érdemes konzultálni, mint egy nagyon megszállottan kedves társaság szolgáltatásaival. Először is Norman Matloff The Art of R Programming című műve. Ha már van tapasztalatod az R programozásban, akkor jól jöhet a Patrick Burns által írt The R Inferno. John Chambers Software for Data Analysis című klasszikus könyve is teljesen helyénvaló.

Ha az R-ben való vizualizációról beszélünk, akkor van egy jó könyv, W. Chang (Winston Chang) az R Graphics Cookbook. A cikkben szereplő ggplot2 példák a következő oktatóanyagból származnak: ggplot2 . Találkozunk a következő „Adatelemzés és gépi tanulás az R-ben” cikkben!

"STATISZTIKAI ELEMZÉS ÉS ADATKEZELÉS AZ R HASZNÁLATÁVAL fű gyökerek gyümölcsök lombozat Heidelberg - London - Togliatti 2014,..."

-- [ 1 oldal ] --

S.E. Mastitsky, V.K. Shitikov

STATISZTIKAI ELEMZÉS ÉS

ADATOK VIZUALIZÁCIÓ R-VEL

fű gyökerei gyümölcs lombozat

Heidelberg – London – Togliatti

2014, Sergey Eduardovich Mastitsky, Vladimir Kirillovich Shitikov

Weboldal: http://r-analytics.blogspot.com

Ezt a művet licenc alapján terjesztik

Creative Commons "Nevezd meg! - Nem kereskedelmi

használat – ugyanazok a feltételek 4.0 világszerte”. A jelen licenc alapján Ön szabadon másolhatja, terjesztheti és módosíthatja ezt a művet, feltéve, hogy a szerzők és a forrás egyértelműen azonosítva vannak. Ha módosítja ezt a munkát, vagy felhasználja a munkájában, akkor az eredményt csak azonos vagy hasonló licenc alatt terjesztheti. Tilos ezt a művet kereskedelmi célokra felhasználni a szerzők hozzájárulása nélkül. A licenccel kapcsolatos további információkért látogasson el a www.creativecommons.com oldalra

Kérjük, olvassa el ezt a könyvet az alábbiak szerint:

Mastitsky S.E., Shitikov V.K. (2014) Statisztikai elemzés és adatvizualizáció R-vel.

E-könyv, hozzáférési cím:

http://r-analytics.blogspot.com

ELŐSZÓ 5

1. A STATISZTIKAI KÖRNYEZET FŐ RENDSZEREI R 8


1.1. Az R környezet kialakulásának története és szervezési alapelvei 8

1.2. Munka az R 11 parancskonzol interfésszel

1.3. Az R Commander 13 csomagmenüvel való munkavégzés

1.4. Objektumok, csomagok, funkciók, eszközök 17

2. NYELV LEÍRÁS R 23

2.1. R 23 Adattípusok

2.2. Vektorok és mátrixok 24

2.3. Tényezők 29

2.4. Listák és táblázatok 31

2.5. Adatok importálása az R 37-be

2.6. Dátum és idő megjelenítése; idősor 40

2.7. Számítások szervezése: függvények, ágak, hurkok 46

2.8. Vektoros számítások R-ben, alkalmazva-50 függvényekkel

3. ALAPVETŐ GRAFIKUS JELLEMZŐK R 58

3.1. plot() szórásdiagramok és 58 függvény ábrázolásának paraméterei

3.2. Hisztogramok, kernelsűrűségi függvények és a 66 cdplot() függvény

3.3. Terjeszkedési diagramok 74

3.4. Kör- és oszlopdiagramok 77

3.5. Cleveland és 1D szórásdiagramok 84

4. LEÍRÓ STATISZTIKA ÉS FELSZERELÉS 97

TERJESZTÉS

–  –  –

ELŐSZÓ

A világ megértésének egyik fő eszköze a személy által különböző forrásokból kapott adatok feldolgozása. A modern statisztikai elemzés lényege egy interaktív folyamat, amely a beérkező információáramlás tanulmányozásából, megjelenítéséből és értelmezéséből áll.

Az elmúlt 50 év története egyben az adatelemzési technológia fejlődésének története is.

Az egyik szerző szívesen emlékszik vissza az 1960-as évek végére és első párkorreláció-számító programjára, amelyet a Promin-2 személyi számítógép 200 kg-ot meghaladó tömegű 150 cellájából gépelt fémtűkkel a "műveleti mezőre".

Manapság nagy teljesítményű számítógépek és megfizethető szoftver lehetővé teszi az informatikai folyamat teljes ciklusának megvalósítását, amely általában a következő lépésekből áll:

° hozzáférés a feldolgozott adatokhoz (különböző forrásokból való betöltése és összekapcsolt forrástáblázatok kitöltése);

° betöltött indikátorok szerkesztése (hiányzó értékek pótlása vagy törlése, jellemzők kényelmesebb formába átalakítása);

° adat annotáció (hogy emlékezzen az egyes adatokra);

° fogadni Általános információ az adatszerkezetről (leíró statisztikák számítása az elemzett mutatók jellemzésére);

° az adatok és a számítási eredmények grafikus ábrázolása érthető informatív formában (egy kép valójában néha felér ezer szóval);

° adatmodellezés (függőségek keresése és statisztikai hipotézisek tesztelése);

° eredmények bemutatása (elfogadható publikációs minőségű táblázatok és diagramok készítése).

Olyan körülmények között, amikor több tucat csomag van a felhasználó szolgáltatásaihoz alkalmazási programok, a választás problémája aktuális (néha tragikus, ha visszaemlékezünk a „buridan szamárra”): melyik adatelemző szoftvert érdemes gyakorlati munkádhoz előnyben részesíteni? Ez általában figyelembe veszi a megoldandó probléma sajátosságait, a feldolgozási algoritmusok beállításának hatékonyságát, a programok beszerzési költségeit, valamint az elemző ízlését és személyes preferenciáit. Ugyanakkor például a Statistica sablon mechanikus menügombjaival nem mindig tudja kielégíteni azt a kreatív kutatót, aki a számítási folyamat előrehaladását szereti önállóan irányítani. Kombájn Különféle típusok elemzést végezhet, hozzáférhet a közbenső eredményekhez, szabályozhatja az adatmegjelenítés stílusát, hozzáadhatja saját bővítményeit szoftver modulok a zárójelentéseket pedig a szükséges formában a kereskedelmi számítástechnikai rendszerek is elkészíthetik, amelyek magas szintű parancsnyelvi eszközöket tartalmaznak, mint a Matlab, SPSS stb. Ezek kiváló alternatívája az ingyenes R szoftverkörnyezet, amely egy modern és folyamatosan fejlődő általános. -célú statisztikai platform.



Mára az R vitathatatlanul vezető szerepet tölt be a szabadon terjesztett statisztikai elemző rendszerek között, amit például az is bizonyít, hogy 2010-ben az R rendszer több kategóriában is a Bossie Awards éves nyílt forráskódú szoftververseny győztese lett. A világ vezető egyetemei, a legnagyobb vállalatok és kutatóközpontok elemzői folyamatosan használják az R-t tudományos és műszaki számítások elvégzése, valamint nagy információs projektek létrehozása során. Az e környezet csomagjain alapuló statisztika széles körben elterjedt oktatása és a tudományos közösség teljes támogatása oda vezetett, hogy az R scriptek behozatala fokozatosan általánosan elismert "szabvánnyá" válik mind a folyóiratok publikációiban, mind a tudósok közötti informális kommunikációban. világ.

Az oroszul beszélő felhasználók számára az R elsajátításának fő akadálya természetesen az, hogy ehhez a környezethez szinte minden dokumentáció angol nyelven létezik. Csak 2008 óta, A.V. erőfeszítései révén. Shipunova, E.M. Baldina, S.V. Petrova, I.S. Zaryadova, A.G. Buhovecek és más lelkesek, módszertani kézikönyvek és könyvek jelentek meg orosz nyelven (a hivatkozások a könyv végén található hivatkozási listában találhatók; linkek oktatási források, amelynek szerzői megvalósíthatóan hozzájárulnak az R népszerűsítéséhez az orosz ajkú felhasználók körében).

Ez a kézikönyv összefoglalja azokat a módszertani bejegyzéseket, amelyeket az egyik szerző 2011 óta tett közzé az „R: Data Analysis and Visualization” blogban.

(http://r-analytics.blogspot.com). Célszerűnek tűnt számunkra mindezt a kissé töredezett anyagot az olvasók kényelme érdekében koncentrált formában bemutatni, és a teljesség kedvéért egyes rovatokat is bővíteni.

Az első három fejezet részletes instrukciókat tartalmaz az R interaktív komponenseivel való munkához, a nyelv és a környezet alapvető grafikus jellemzőinek részletes leírását.

A könyv ezen része a programozás terén kezdők számára meglehetősen hozzáférhető, bár az R nyelvet már ismerő olvasó érdekes kódrészleteket találhat ott, vagy referenciaként használhatja a grafikus paraméterek leírását.

A következő fejezetek (4-8) az adatfeldolgozás és a statisztikai modellek felépítésének általános eljárásait írják le, amelyet több tucat példával illusztrálunk. Ezek tartalmazzák Rövid leírás elemzési algoritmusok, a kapott főbb eredmények és azok lehetséges értelmezése. A lehetőségekhez mérten igyekeztünk elkerülni a számos alkalmazott statisztikai kézikönyvre jellemző "rituális" szófordulatokkal való visszaélést, ismert tételeket idézve, többszintű számítási képleteket hozva. Elsősorban arra helyezték a hangsúlyt gyakorlati használat- hogy az olvasó az olvasottaktól vezérelve elemezze adatait, és az eredményeket bemutassa a kollégáknak.

Ennek a résznek a részei a bemutatott anyag összetettsége szerint épülnek fel.

A 4. és 5. fejezet azoknak az olvasóknak szól, akik csak egyetemi alapképzés keretében érdeklődnek a statisztikák iránt. A 6. és 7. fejezetben az általános lineáris modellek egységes elméletének keretein belül diszperziós és regressziós elemzéseket mutatunk be, valamint különféle algoritmusokat mutatunk be a modellek tanulmányozására és szerkezeti azonosítására. A 8. fejezetet néhánynak szenteljük modern módszerekáltalánosított regressziós modellek felépítése és elemzése.

Mivel a kutatót folyamatosan érdekli a térbeli elemzés és az eredmények földrajzi térképeken és diagramokon való megjelenítése, a 9. fejezetben néhány példát mutatunk be ilyen vizualizációs technikákra.

Módszertani útmutatónkat azoknak a hallgatóknak, végzős hallgatóknak, valamint fiatal és elismert tudósoknak ajánljuk, akik szeretnék megtanulni, hogyan elemezzék és vizualizálják az adatokat az R-környezet használatával. Reméljük, hogy az útmutató elolvasásának végére megérti, hogyan Az R működik, ahol további információkhoz juthat, valamint az egyszerű és meglehetősen összetett adatelemzési feladatok kezeléséhez.

A könyv összes fejezetéhez tartozó R-kódok szkriptjeit tartalmazó fájlok, valamint a végrehajtásukhoz szükséges kiindulási adatok táblázatai ingyenesen letölthetők a GitHub tárhelyéről https://github.com/ranalytics/r-tutorials. valamint az Orosz Tudományos Akadémia Volga-medence Ökológiai Intézetének weboldaláról a http://www.ievbras.ru/ecostat/Kiril/R/Scripts.zip hivatkozáson.

Megjegyzendő, hogy ebben a kézikönyvben a szöveg a szerző kiadásában szerepel, ezért minden erőfeszítésünk ellenére előfordulhat benne elírás, nyelvtani pontatlanság és sikertelen kifejezés. Hálásak leszünk Önnek, az Olvasónak, hogy ezeket, valamint az egyéb észlelt hiányosságokat e-mailben jelezte [e-mail védett] Hálásak leszünk minden egyéb észrevételért és javaslatért is.

–  –  –

1. A STATISZTIKAI KÖRNYEZET FŐ ÖSSZETEVŐI R

1.1. Az R környezet kialakulásának története és alapelvei Az R statisztikai elemzés és adatvizualizáció rendszere a következő fő részekből áll:

° magas szintű R programozási nyelv, amely lehetővé teszi egy sor különféle műveletek megvalósítását objektumokkal, vektorokkal, mátrixokkal, listákkal stb.;

° adatfeldolgozási funkciók nagy halmaza külön csomagokban (csomagban) gyűjtve;

° egy fejlett támogatási rendszer, amely magában foglalja a környezeti összetevők frissítését, online súgót és különféle oktatási forrásokat, amelyek mind az R kezdeti elsajátítására, mind pedig a felmerülő nehézségekre vonatkozó tanácsadásra szolgálnak.

Az utazás kezdete 1993-ra nyúlik vissza, amikor két fiatal új-zélandi tudós, Ross Ihaka és Robert Gentleman bejelentette új fejlesztésüket, amelyet R-nek neveztek el. A fejlett kereskedelmi statisztikai adatfeldolgozó rendszer S programozási nyelvét vették alapul. - PLUS, és létrehozta ingyenes nyílt forráskódú implementációját, amely egy könnyen bővíthető moduláris architektúrában különbözik elődjétől. Hamarosan megjelent egy elosztott rendszer a csomagok tárolására és terjesztésére az R számára, amely a "CRAN" betűszó alatt ismert (Comprehensive R Archive Network - http://cran.r-project.org), a szervezés fő ötlete. amely az alkalmazott adatfeldolgozó eszközök folyamatos bővítése, kollektív tesztelése és operatív terjesztése.

Kiderült, hogy az önzetlen szellemi fejlesztők ezreiből álló hatalmas "kollektív intelligencia" folyamatos és jól összehangolt erőfeszítéseinek egy ilyen terméke sokkal hatékonyabbnak bizonyult, mint a kereskedelmi statisztikai programok, amelyek licencköltsége több ezer dollár is lehet. . Mivel az R a hivatásos statisztikusok kedvenc nyelve, mindenki legutóbbi eredményei A statisztikai tudomány nagyon gyorsan elérhetővé válik az R felhasználók számára világszerte kiegészítő könyvtárak formájában. Ma egyetlen kereskedelmi statisztikai elemző rendszer sem fejlődik ilyen gyorsan. Az R felhasználóinak nagy serege van, akik jelentenek hibákat további könyvtárak és magának az R rendszernek a szerzőinek, amelyeket azonnal kijavítanak.

Az R számítástechnikai nyelv, bár elsajátítása némi erőfeszítést, figyelemre méltó keresési készségeket és enciklopédikus memóriát igényel, lehetővé teszi olyan számítások gyors elvégzését, amelyek sokféleségében szinte „kimeríthetetlenek, mint egy atom”. 2014 júliusáig a rajongók világszerte 6739 bővítménykönyvtárat írtak az R-hez, köztük 137 506 funkciót (lásd alább).

http://www.rdocumentation.org), amelyek jelentősen kibővítik a rendszer alapvető képességeit. Nagyon nehéz elképzelni a statisztikai módszerek bármely osztályát, amelyet ma még nem implementáltak R-csomagok formájában, beleértve természetesen a teljes "úri halmazt": lineáris és általánosított lineáris modelleket, nem lineáris regressziós modelleket, kísérletet tervezés, idősor elemzés, klasszikus parametrikus és nem paraméteres tesztek, Bayes-statisztika, klaszteranalízis és simítási módszerek. Hatékony vizualizációs eszközök segítségével az elemzés eredményeit különféle grafikonok és diagramok formájában összegezhetjük. A hagyományos statisztikákon kívül a kifejlesztett funkcionalitás számos algoritmust tartalmaz numerikus matematikához, optimalizálási módszerekhez, differenciálegyenletek megoldásához, mintázatfelismeréshez stb. Genetikusok és szociológusok, nyelvészek és pszichológusok, vegyészek és orvosok, térinformatikai és webes technológiák szakemberei.

Az R-ről szóló "tulajdonos" dokumentáció igen terjedelmes, és nem mindig ésszerűen megírt (az angol nyelvű irodalom furcsa hagyománya szerint túl sok szó esik a triviális igazságok leírására, miközben a fontos pontokat nyelvforgatóan átsiklanak). Ezen felül azonban a világ vezető kiadói (Springer, Cambridge University Press és Chapman & Hall/CRC) vagy egyszerűen csak egyéni rajongói csoportok rengeteg olyan könyvet adtak ki, amelyek az R nyelvű adatelemzés különböző aspektusait írják le (lásd pl. , az "Encyclopedia of Psychodiagnostics" weboldalon található hivatkozások listája, http://psylab.info/R: Literature). Emellett számos aktív nemzetközi és orosz R felhasználói fórum is működik, ahol bárki segítséget kérhet egy problémával kapcsolatban. Az irodalomjegyzékben pár száz könyvet és internetes hivatkozást adunk meg, amelyekre érdemes hivatkozni. Speciális figyelem miközben tanulmányozta R.

közvetlen tanulás praktikus munka Az R-ben a) az R nyelv konstrukcióinak elsajátításából és az adatelemzést végző függvényhívási jellemzők megismeréséből, valamint b) az adatok elemzésére és megjelenítésére szolgáló speciális módszereket megvalósító programokkal való munkavégzés készségeinek elsajátításából áll.

Az R felhasználói felület eszközeinek megválasztása nem egyértelmű, és nagymértékben függ a felhasználók ízlésétől. Még a tekintélyes szakértők között sincs egyetértés.

Vannak, akik úgy vélik, hogy nincs jobb a szabványos R konzolos felületnél, mások úgy vélik, hogy a kényelmes munka érdekében érdemes telepíteni az elérhető integrált fejlesztői környezetek (IDE) egyikét, gazdag gombmenükészlettel. Például, nagyszerű lehetőség egy ingyenes integrált RStudio fejlesztői környezet.

Az alábbiakban a konzolos verzió leírására és az R Commanderrel való együttműködésre koncentrálunk, de az olvasó további keresését segítheti az IDE különböző verzióinak áttekintése, amelyet Shipunov és munkatársai könyvének mellékletében mutatnak be. (2014).

Az egyik R-szakértő, Joseph Rickert úgy véli, hogy az R tanulási folyamata a következő szakaszokra osztható (további részletekért lásd:

cikke az inside-r.org-on):

1. Az R közösség általános kultúrájának és az R nyelv kifejlesztésének és működésének programozási környezetének megismerése A fő- és segédforrások felkeresése és egy jó bevezető tankönyv elsajátítása. Az R telepítése a felhasználó számítógépére és az első tesztszkriptek végrehajtása.

2. Adatok beolvasása szabványos operációs rendszer fájlokból és magabiztosan R-függvények használata a felhasználó számára ismert statisztikai elemzési eljárások korlátozott sorozatának végrehajtásához.

3. Az R nyelv alapstruktúráinak felhasználása egyszerű programok írásához.

Saját függvények írása. Ismerkedjen meg az R által használható adatstruktúrákkal és a nyelv fejlettebb funkcióival. Munka adatbázisokkal, weboldalakkal és külső adatforrásokkal.

4. Komplex programok írása R nyelven Az ún. S3 és S4 osztályú objektumok szerkezetének önálló fejlesztése, mélyreható ismerete.

5. Fejlesztés szakmai programok R nyelven. További könyvtári modulok önálló létrehozása az R számára.

A legtöbb alkalmi R felhasználó megáll a 3. szakaszban, mert

az addig megszerzett tudás bőven elegendő a fő szakmai tevékenységük profiljában szereplő statisztikai feladatok ellátásához.

Erről a kötetről az R nyelv leírását adjuk az útmutató keretein belül.

Az alap R statisztikai környezet telepítése és konfigurálása nagyon egyszerű. 2014 júliusától a jelenlegi verzió az R 3.1.1 a 32 és 64 bites Windows rendszerhez (az összes többi általános operációs rendszerhez is elérhető terjesztési készlet). A rendszer disztribúciós készletét egy 29 csomagból álló (54 megabájtos) alapkészlettel együtt teljesen ingyenesen letöltheti a projekt főoldaláról http://cran.r-project.org vagy az orosz „tükörről” http:/ /cran.gis-lab.info. A rendszer telepítésének folyamata a letöltött disztribúcióból nem okoz nehézséget, és nem igényel különösebb megjegyzéseket.

A szkriptek, kezdeti adatok és számítási eredmények tárolásának kényelme érdekében érdemes egy speciális munkakönyvtárat kijelölni a felhasználó számítógépén. Nagyon nem kívánatos cirill karakterek használata a munkakönyvtár nevében.

Célszerű elhelyezni a munkakönyvtár elérési útját és néhány egyéb beállítási lehetőséget úgy, hogy bármely szövegszerkesztővel módosítsa rendszerfájl C:\Program Files\R\Retc\Rprofile.site (lehet, hogy más helyen található a számítógépen). Az alábbi példában a módosított vonalak zölddel vannak jelölve.

A munkakönyvtár megadása mellett ezek a sorok hivatkozást adnak az orosz forráshoz az R csomagok letöltéséhez és automatikus indítás R parancsnok.

Rprofile.site fájllista # Bármit, amit "#" megjegyzés karakter követ, figyelmen kívül hagy a környezet # options(papersize="a4") # options(editor="notepad") # options(pager="belső") # beállítja a kijelzőt típus háttér-információ# options(help_type="text") options(help_type="html") # helyi könyvtár helyének beállítása #.Library.site - file.path(chartr("\\", "/", R.home()) , "site-library") # Indítsa el az R Commander menüt a környezet betöltésekor # Tegye "#" jeleket, ha az Rcmdr-re nincs szükség local(( old - getOption("defaultPackages") options(defaultPackages = c(old, "Rcmdr") ) )) # Define CRAN mirror local((r - getOption("repos") r["CRAN"] - "http://cran.gis-lab" options(repos=r))) # Adja meg a munkakönyvtár elérési útját (bármely más a számítógépén) setwd("D:/R/Process/Resampling") Ami a "jó bevezető oktatóanyagot" illeti, minden javaslatunk szubjektív. Mindazonáltal meg kell említeni W. Venables és D. Smith hivatalosan elismert bevezetőjét az R-hez (Venables, Smith, 2014), valamint R. Kabakov könyvét (Kabaco, 2011), részben azért, mert létezik orosz fordításuk. Meg kell jegyeznünk a hagyományos "útmutatót a bábokhoz" (Meys, Vries, 2012) és a kézikönyvet (Lam, 2010), amelyek irigylésre méltó holland pedantériával készültek. Az orosz nyelvű bevezető kurzusok közül a legteljesebbek I. Zaryadov (2010a) és A. Shipunov et al. (2014).

1.2. Az R interfész shell használata Az R statikus környezet végrehajtja a szkriptfájlban található, vagy a konzolból adott parancsok sorozata által képviselt R nyelvi utasítások bármely halmazát. A konzollal való munka nehéz lehet a modern felhasználók számára, akik hozzászoktak a nyomógombos menükhöz, mert meg kell jegyezni az egyes parancsok szintaxisát. Néhány készség elsajátítása után azonban kiderül, hogy számos adatfeldolgozási eljárás gyorsabban és kevesebb nehézséggel elvégezhető, mint mondjuk ugyanabban a Statistica-csomagban.

Az R konzol egy párbeszédpanel, amelyben a felhasználó beírja a parancsokat, és látja végrehajtásuk eredményét. Ez az ablak azonnal megjelenik a környezet indításakor (például miután az asztalon az R parancsikonra kattintottunk). Ezenkívül a szabványos R grafikus felhasználói felület (RGui) tartalmaz egy szkriptszerkesztő ablakot és felugró ablakokat grafikus információkkal (ábrák, diagramok stb.)

Parancs módban az R például úgy működhet, mint egy normál számológép:

A prompt karaktertől jobbra a felhasználó beírhat egy tetszőleges aritmetikai kifejezést, megnyomhatja az Enter billentyűt, és azonnal megkaphatja az eredményt.

Például a fenti ábra második parancsában a faktoriális és szinuszfüggvényeket, valamint a beépített p számot használtuk. A szöveges formában kapott eredmények az egérrel kiválaszthatók, és a vágólapon keresztül az operációs rendszer bármely szövegfájljába (például Word dokumentumba) másolhatók.

Amikor az RGui-val dolgozik, minden esetben azt javasoljuk, hogy hozzon létre egy fájlt egy szkripttel (vagyis R parancsok sorozatával, amelyek bizonyos műveleteket hajtanak végre). Általában ez egy egyszerű szöveges fájl tetszőleges névvel (de a határozottság kedvéért jobb a *.r kiterjesztéssel), amely létrehozható és szerkeszthető egy normál szerkesztővel, például a Jegyzettömbbel. Ha ez a fájl létezik, akkor célszerű a munkakönyvtárba helyezni, majd az R elindítása és a "Fájl megnyitása Script" menüpont kiválasztása után ennek a fájlnak a tartalma megjelenik az "R Editor" ablakban. Az "Edit Run All" menüpontból script parancsok sorozatát hajthatja végre.

Az elkészített script tetszőleges helyéről egérrel is kiválaszthat egy értelmes töredéket (egy változó nevétől a teljes tartalomig), és elindíthatja ezt a blokkot végrehajtásra. Ezt négy lehetséges módon lehet megtenni: a fő és a helyi menü, a Ctrl+R billentyűkombináció vagy az eszköztár gombja.

Az ábrán a következő műveletek történtek:

° Az R-object gadm a Global Administrative Areas (GADM) ingyenes internetes forrásból lett letöltve a Fehérorosz Köztársaság területi felosztására vonatkozó adatokkal;

° A városok latin nyelvű neveit általánosan használt megfelelőkkel helyettesítjük;

° az sp csomag spplot() funkciójával a grafikus ablakban megjelent a köztársaság adminisztratív térképe, amely a menü segítségével a vágólapra másolható, vagy szabványos meta- vagy raszteres grafikus fájlként menthető.

Az egyes operátorok jelentésével részletesebben a következő részekben foglalkozunk, de itt figyelünk arra, hogy a szkriptben történő kiválasztással és karakterkombináció futtatásával [e-mail védett], a konzol ablakban megkapjuk az objektum teljes adatkészletét, és a kiválasztott szimbólumokból álló parancsot gadm, [e-mail védett]$NAME_1 megadja nekünk a felügyeleti központok nevének listáját a módosítás előtt és után.

Így az R Editor megkönnyíti a szkriptben való navigálást, a parancsok tetszőleges kombinációinak szerkesztését és végrehajtását, a kód bizonyos részeinek keresését és cseréjét. A fent említett RStudio-bővítmény lehetővé teszi a kód szintaktikai kiemelését, automatikus befejezését, a parancssorozat függvényekbe "csomagolását" a későbbi használathoz, a Sweave vagy TeX dokumentumokkal való munkát, és egyéb műveleteket, amelyek hasznosak lehetnek haladó felhasználó.

Az R kiterjedt beépített súgóanyagokkal rendelkezik, amelyek közvetlenül elérhetők az RGui-ból.

Ha a konzolból kiadja a help.start() parancsot, akkor megnyílik egy oldal az internetböngészőben, amely hozzáférést biztosít az összes súgóforráshoz: alapvető kézikönyvek, szerzői anyagok, válaszok a valószínű kérdésekre, változtatások listája, más R objektumokhoz mutató hivatkozások stb. ..d.:

Az egyes funkciókhoz segítséget kaphat a következő parancsokkal:

° help("foo") vagy? foo - segítség a foo függvényhez (az idézőjel nem kötelező);

° help.search("foo") vagy ?? foo - minden foo-t tartalmazó súgófájl keresése;

° example("foo") – példák a foo függvény használatára;

° RSiteSearch("foo") – hivatkozások keresése online kézikönyvekben és levelezőlista-archívumokban;

° apropos("foo", mode="function") – a foo kombinációval rendelkező összes függvény listája;

° vignette("foo") – A foo témával kapcsolatos kézikönyvek listája.

1.3. Munka az R Commander csomagmenüvel A kezdő felhasználók számára kényelmes eszköz az R-ben történő számítások elsajátításához az R Commander – platformfüggetlen GUI gombos menü stílusában, az Rcmdr csomagban megvalósítva. Lehetővé teszi a statisztikai elemzési eljárások nagy halmazának végrehajtását anélkül, hogy előzetesen el kellene tanulnia a függvényeket a parancsnyelven, de ehhez akaratlanul is hozzájárul, mivel egy speciális ablakban megjeleníti az összes végrehajtott utasítást.

Telepítheti az Rcmdr-t, mint bármely más kiterjesztést, az R konzol menü "Csomagok Csomag telepítése" menüjéből, de jobb, ha futtatja a következő parancsot:

install.packages("Rcmdr", dependencies=TRUE), ahol a függőségek opció engedélyezése garantáltan telepíti a többi csomag teljes készletét, amelyekre szükség lehet az Rcmdr menün keresztüli adatfeldolgozás során.

Az R Commander akkor indul el, ha az Rcmdr csomagot a "Csomagok tartalmazzák a csomagot" menüből vagy a library(Rcmdr) paranccsal töltik be. Ha valamilyen oknál fogva úgy döntöttek, hogy az adatokat kizárólag az R Commander segítségével elemzik, akkor a automatikus letöltés ezt a grafikus héjat, amikor elindítja az R-t, szerkesztenie kell az Rprofile.site fájlt az 1.1. szakaszban látható módon.

Megvizsgáljuk az R Commanderben való munkát egy példa segítségével korrelációs elemzés adatok a Dreissena polymorpha kéthéjú kagyló Conchophthirus acuminatus csillósokkal való fertőzésének szintjéről Fehéroroszország három tavában (Mastitsky S.E. // BioInvasions Records.

2012. V. 1. P 161–169). A kiindulási adatokat tartalmazó táblázatban, amelyet a figshare honlapjáról töltünk le, két változóra leszünk kíváncsiak: a puhatestű héjának hossza (ZMlength, mm) és a puhatestűben talált csillósok száma (CAnumber). Ezt a példát részletesen a 4. és 5. fejezet tárgyalja, ezért itt nem foglalkozunk részletesen az elemzés jelentésével, hanem az Rcmdr-rel való munka technikájára összpontosítunk.

Ezután felugró ablakokban határozzuk meg az adatbetöltési módot és a hivatkozás címét az interneten. Könnyen belátható, hogy ugyanazokat az adatokat könnyedén betölthetjük a lokálisból szöveges fájl, Excel munkafüzet vagy adatbázistábla. Annak érdekében, hogy megbizonyosodjon arról, hogy adataink helyesen töltődnek be (vagy szükség esetén szerkessze azokat), kattintson az „Adatok megtekintése” gombra.

Adatszervezés definíciós ablak A betöltött tábla töredéke

A második szakaszban a "Statisztika" menüben válassza a "Korrelációs teszt" lehetőséget:

Kiválasztunk egy pár korrelált változót, és az Output ablakban megkapjuk a Pearson korrelációs együtthatót (R = 0,467), az elért statisztikai szignifikancia szintet (p-érték 2,2e-16) és a 95%-os konfidencia határokat.

–  –  –

A kapott eredmények könnyen átmásolhatók a kimeneti ablakból a vágólapon keresztül.

Most megkapjuk grafikus kép korrelációs függőség. Válassza ki a CA-szám és a ZMlength szórásdiagramját, és adja meg a tartományok éldiagramjait, egy lineáris legkisebb négyzetek trendvonalát (zöld színben), egy lokális regressziós módszerrel simított vonalat (pirossal), és egy konfidenciarégióval (szaggatott vonal) ábrázolja. Mindhárom tó esetében (tó változó) a kísérleti pontokat különböző szimbólumok jelölik.

–  –  –

Grafikon másolása az R Commander grafikus ablakából Ahogy az összes R Commander menügomb megnyomásával egyenértékű, R utasítások jelennek meg a szkript ablakban.

A mi esetünkben így néznek ki:

Clams read.table("http://figshare.com/media/download/98923/97987", header=TRUE, sep="\t", na.strings="NA", dec=".", strip. white=TRUE) cor.test(Clam$CAnumber, Clam$ZMlength, alternative="kétoldalas", method="pearson") scatterplot(CAnumber ~ ZMlength | Lake, reg.line=lm, smooth=TRUE, spread= TRUE, boxplots="xy", span=0.5, ylab="Csiliák száma", xlab="Shell length", by.groups=FALSE, data=Mollusks) Maga a szkript vagy a kimeneti eredmények (vagy mindkettő) menthető fájlokban, és bármikor megismételhető. Ugyanez az eredmény érhető el az R Commander futtatása nélkül, ha betölti a mentett fájlt az R konzolon keresztül.

Általánosságban elmondható, hogy az R nyelvi konstrukciók ismerete nélkül (vagy egyszerűen nem akarja megterhelni a memóriáját azzal, hogy megjegyezze őket), az Rcmdr segítségével szinte az összes alapvető statisztikai módszerrel adatfeldolgozást végezhet. Bemutat parametrikus és nem paraméteres teszteket, módszereket különféle folytonos és diszkrét eloszlások illesztésére, többváltozós kontingencia táblák elemzését, egydimenziós és többváltozós varianciaanalízist, főkomponens elemzést és klaszterezést, általánosított regressziós modellek különböző formáit, stb. A kapott modellek elemzésére és tesztelésére szolgáló berendezés alapos tanulmányozást érdemel.

Az R Commanderrel végzett munka technikájának, valamint az adatfeldolgozó algoritmusok megvalósításának részletes leírása megtalálható a kézikönyvekben (Larson-Hall, 2009; Karp, 2014).

Ahogy azonban a jelnyelv nem helyettesítheti az emberi kommunikációt a természetes nyelven, úgy az R nyelv ismerete jelentősen kitágítja a felhasználó képességeinek határait, kellemessé, izgalmassá teszi az R környezettel való kommunikációt. És itt a szkriptek automatikus generálása az R Commanderben kiváló eszköz lehet az olvasó számára, hogy megismerkedjen az R nyelv operátoraival, és megtanulja az egyes függvények hívásának sajátosságait. Az útmutató következő fejezeteit az adatfeldolgozási eljárások tárgyalásának szenteljük csak a nyelvi konstrukciók szintjén.

1.4. Objektumok, csomagok, függvények, eszközök Az R nyelv az úgynevezett magas szintű objektum-orientált programozási nyelvek családjába tartozik. Egy nem szakember számára a „tárgy” fogalmának szigorú meghatározása meglehetősen elvont. Az egyszerűség kedvéért azonban objektumként hívhat mindent, ami az R-vel való munka során jött létre.

Az objektumoknak két fő típusa van:

1. Az adattárolásra szánt objektumok ("adatobjektumok") egyedi változók, vektorok, mátrixok és tömbök, listák, faktorok, adattáblázatok;

2. A függvények ("függvényobjektumok") elnevezett programok, amelyek új objektumok létrehozására vagy bizonyos műveletek végrehajtására szolgálnak.

Az R környezet kollektív és szabad felhasználásra szánt objektumai olyan csomagokba vannak csomagolva, amelyeket hasonló témák vagy adatfeldolgozási módszerek egyesítenek. Van némi különbség a "csomag" és a "könyvtár" kifejezések között. A "könyvtár" kifejezés egy könyvtárat definiál, amely egy vagy több csomagot tartalmazhat. A "csomag" kifejezés funkciók, HTML kézikönyvoldalak és mintaadat-objektumok gyűjteményére utal, amelyek tesztelésre vagy tanulásra szolgálnak.

A csomagok az operációs rendszer egy adott könyvtárába kerülnek telepítésre, vagy eltávolított formában tárolhatók és terjeszthetők archivált *-ban. zip fájlok Windows (a csomag verziójának meg kell egyeznie az R adott verziójával).

A csomaggal kapcsolatos teljes információ (verzió, fő téma, szerzők, változtatások dátumai, licencek, egyéb funkcionálisan kapcsolódó csomagok, a funkciók teljes listája a céljuk megjelölésével stb.) a paranccsal érhető el.

library(help=csomagnév), például:

library(help=Matrix) Minden R-csomag három kategória valamelyikébe tartozik: alap ("alap"), ajánlott ("ajánlott") és egyéb, a felhasználó által telepített.

Ezek listáját egy adott számítógépen kaphatja meg, ha kiadja a library() parancsot, vagy:

install.packages(priority = "alap") install.packages(priority = "ajánlott") # Get teljes lista csomaglista csomaglista - rownames(installed.packages()) # Információk kiadása a vágólapra excel formátumban write.table(packlist,"clipboard",sep="\t", col.names=NA) Az alap- és az ajánlott csomagok általában szerepelnek az R telepítőfájlba.

Természetesen nem kell azonnal „tartalékba” telepíteni sok különböző csomagot.

Csomag telepítéséhez elég az R Console parancsablakában kiválasztani a "Csomagok telepítése csomag(ok)" menüpontot, vagy beírni például a parancsot:

install.packages(c("vegán", "xlsReadWrite", "autó"))

A csomagok letölthetők például az orosz "tükör" http://cran.gis-lab.info oldaláról, amelyhez kényelmes az Rprofile.site fájl kiadása, ahogy az 1.1. szakaszban látható.

A csomagok telepítésének másik lehetősége az, hogy felkeresi a http://cran.gis-lab.info/web/packages webhelyet, kiválasztja a kívánt csomagot zip-fájl formájában, és letölti a számítógépe kiválasztott mappájába.

Ebben az esetben megtekintheti a csomagon található összes információt, különösen a benne lévő funkciók leírását, és eldöntheti, hogy mennyire van szüksége. Ezután végre kell hajtania a "Csomagok Csomagok telepítése helyi zip-fájlokból" parancsot.

Az RGui konzol indításakor csak az alapcsomagok egy része töltődik be. Bármely másik csomag inicializálásához a funkcióinak közvetlen használata előtt meg kell adnia a parancskönyvtárat (csomagnév).

A következő parancs kiadásával meghatározhatja, hogy mely csomagok töltődnek be a folyamatban lévő munkamenet minden pillanatában:

sessionInfo() R 2.13.2-es verzió (2011-09-30) Platform: i386-pc-mingw32/i386 (32 bites)

–  –  –

egyéb mellékelt csomagok:

Vegán_2,0-2 permut_0,6-3

névtéren keresztül betöltve (és nem csatolva):

Grid_2.13.2 lattice_0.19-33 tools_2.13.2 A következő táblázat felsorolja (talán nem kimerítően) a könyvben bemutatott szkriptekben használt csomagokat:

R csomagok Cél "Alap" csomagok Alap konstrukciók R alap Csomagfordító R fordító Adatokat tartalmazó táblázatkészlet a funkciók teszteléséhez és demonstrálásához adatkészletek Alapvető grafikus függvények grafikus grafikus eszközillesztők, színpaletták, betűtípusok grEszközök Funkciók grafikus rétegek grid létrehozásához Objektumorientált programozás komponensek (osztályok , metódusok) Függvények regressziós spline-okkal való munkavégzéshez különböző típusú spline-ok Alapvető statisztikai elemzési függvények statisztika Módszerek statisztikai függvények class S4 stats4 Felhasználói felület összetevői (menük, választódobozok stb.) tcltk Információt támogató, adminisztrációs és dokumentációs eszközök Különféle segédprogramok hibakereséshez, I/O-hoz, archiváláshoz stb.

Utils "Ajánlott" csomagok Különféle bootstrap és "jackknife" rutinok funkciói boot Különféle nem hierarchikus osztályozási és felismerési algoritmusok osztály Partícionáló és hierarchikus fürtözési algoritmusok fürt Kódelemzés és ellenőrzés R kódeszközök Különféle formátumú fájlok olvasása és írása (DBF, SPSS, DTA Stata) KernSmooth kernelsimítás-optimalizálást kiszolgáló külföldi függvények Grafikus funkciók kiterjesztett funkcionalitás (Sarkar, 2008) rács Adatok és statisztikai függvények halmaza (Venables, Ripley, 2002) MASS Mátrix- és vektorműveletek Mátrix Általánosított additív és vegyes hatásmodellek mgcv Lineáris és nemlineáris vegyes hatásmodellek nlme Neurális hálózatok közvetlen terjedés nnet Osztályozó és regressziós fák építése rpart Kriging funkciói és a pontok térbeli eloszlásának elemzése térbeli Túlélési elemzés (Cox modell stb.) túlélés Működés közben telepített csomagok adegenet Genetikai távolságelemző algoritmusok kar Regressziós modellek elemzése - melléklet a könyv (Gelman, Hill , 2007) autó Alkalmazott regressziós elemzéssel kapcsolatos eljárások corrplot Korrelációs mátrixok grafikus megjelenítése fitdistrplus Statisztikai eloszlások illesztése FWDselect, Informatív változók halmazának kiválasztása regressziós modellekben packfor gamair Adatkészletek geoszféra távolság additív modellek teszteléséhez Estiográfiai távolság additív modellek ggplot2 Fejlett grafikus csomag magas funkcionalitással DAAG Adatelemzés és grafikus funkciók a könyvhöz (Maindonald, Braun, 2010) Hmisc Harrell függvénykészlet HSAUR2 Könyvmelléklet (Everitt, Hothorn, 2010) ISwR Elsődleges statisztikai elemzés c to R jpeg Munkavégzés grafikus fájlok jpeg lars Speciális regressziótípusok (LARS, Lasso stb.) lavaan Megerősítő elemzés és szerkezeti egyenletmodellek lmodel2 I. és II. típusú regressziós modellek (MA, SMA, RMA) megvalósítása maptools Földrajzi térképeszközök egerek Eljárások a hiányzó értékek elemzésére és kitöltésére momentumok Függvények mintapillanatok számítása nortest A normál eloszlású kiugró értékek hipotézisének tesztelésének kritériumai Kiugró értékek elemzése pastecs adatokban Térbeli és idősorok elemzése ökológiában pls Regresszió a főkomponenseken pwr Hipotézisek statisztikai erejének becslése átformálás Az adatok rugalmas átalakítása táblázatok robustbase Robusztus módszerek regressziós modellek felépítésére rootSolve Függvény gyökereinek megkeresése skálákkal Színskálák kiválasztása sem Struktúraegyenletek modelljei semPlot Strukturális összefüggések megjelenítése sm Eloszlássűrűség becslése és simítási módszerek sp Téradatok elérésének osztályai és módszerei spatstat Methods of térbeli statisztika, illik spdep modellek Térbeli függőségek: geostatisztikai módszerek és stargazer modellezés Statisztikai modellek információinak megjelenítése különböző vcd formátumokban Kategorikus adatok megjelenítése Közösségi ökológiai számítások elvégzése (hasonlóság, diverzitás és vegán fészkelő mérések, ordináció és többváltozós elemzés) Ha megpróbáljuk letölteni a csomagot, még nincs telepítve az R-be, vagy egy még be nem töltött csomag funkcióit próbáljuk használni, rendszerüzeneteket fogunk kapni:

sem(modell, data=Politikai demokrácia) Hiba: nem található a "sem" függvény könyvtár(lavaan) Hiba a könyvtárban(lavaan) : nincs "lavaan" csomag felhasználó nevű csomag, és megérti, hogy melyiket kell letölteni és melyiket kell előre telepíteni . A szkript működésének megértéséhez a következő részben ismertetett R nyelvi konstrukciók ismerete szükséges, de az érdeklődő olvasó később visszatérhet ezekre a parancsokra.

instant_pkgs - function(pkgs) ( pkgs_miss - pkgs)] # A letöltésre nem előkészített csomagok telepítése:

if (length(pkgs_miss) 0) ( install.packages(pkgs_miss) ) # Még nem töltött csomagok letöltése:

Attached - search() csatolt_pkgs - csatolva kell_csatolnunk - pkgs if (hossz(kell_csatolni) 0) ( for (i in 1:length(need_to_tattach)) request(a_csatolandó_kell[i], karakter.only = TRUE) ) # Hívás példa:

instant_pkgs(c("alap", "jpeg", "vegán"))

Az egyes csomagok funkcióiról listát kaphat, például a következő parancs kiadásával:

ls(pos = "package:vegan") Megjegyzés: Az ls() egy általános célú függvény az objektumok listázására adott környezetben. A fenti parancs a vegán csomagot állítja be ilyen környezetként. Ha ezt a parancsot paraméterek nélkül adjuk ki, akkor egy listát kapunk az aktuális munkamenet során létrehozott objektumokról.

A betöltött csomagban lévő bármely függvény bejövő paramétereinek argumentumlistáját az args() parancs kiadásával kaphatja meg.

Például a később általunk széles körben használt lm() lineáris modell-levezetési függvény elindításakor a következő paraméterek kerülnek beállításra:

Args(lm) függvény (képlet, adatok, részhalmaz, súlyok, na.action, metódus = "qr", modell = IGAZ, x = HAMIS, y = HAMIS, qr = IGAZ, szingular.ok = IGAZ, kontrasztok = NULL, offset,...) Ha olyan parancsot adunk meg, amely csak a függvény rövidítéséből áll (például az IQR interkvartilis tartományának kiszámítása), akkor a függvény forrásszövegét R kódokban kaphatja meg:

IQR függvény (x, na.rm = HAMIS) diff(kvantilis(as.numeric(x), c(0,25, 0,75), na.rm = na.rm, names = FALSE)) A haladó felhasználó módosíthatja ezt a kódot és "átirányítja" a szabványos függvényhívást az Ön verziójára.

Ha azonban a lineáris modell előrejelzett értékeinek kiszámításához használt predikció() függvény kódját is ugyanúgy meg akarjuk nézni, akkor a következőt kapjuk:

előrejelző függvény (objektum,...) UseMethod("predict") Ebben az esetben a predikt() egy "univerzális" függvény: attól függően, hogy melyik modellobjektum kerül a bemenetébe (lm lineáris regresszióhoz, glm Poissonhoz vagy logisztikai regresszió, lme vegyes hatású modellhez stb.), a megfelelő módszer a prediktív értékek megszerzésére frissül.

Ez a funkció különösen a következő módszerek megvalósítására szolgál:

metódusok("jósolni") megjósolni.ar* megjósolni.Arima* jósolni.arima0* megjósolni.glm megjósolni.HoltWinters* megjósolni.lm előrejelzés.loess* predikció.mlm predikció.nls* predikció.poly előrejelzés.ppr* előrejelzés.prcomp* ennusta.princomp* expect.smooth.spline* ennusta.smooth.spline.fit* ennusta.StructTS* A nem látható függvények csillaggal vannak jelölve Az S3 stílusban a metódus valójában egy függvény, amelyet egy másik általános függvény hív meg, mint például a print( ) , plot() vagy summary() , a bemenetként megadott objektum osztályától függően. Ugyanakkor a class attribútum felelős az "objektum orientációért", amely biztosítja a megfelelő feladást és a szükséges metódus meghívását. ezt a tárgyat. Tehát az általánosított lineáris modell előrejelzett értékeinek megszerzésére szolgáló "függvény-módszer"-nek lesz egy hívása a ennusta.glm() függvényre, a spline-okkal történő simításkor - predikt.smooth.spline() stb. Részletes információk az S3 OOP modell az S3Methods súgó részben, a fejlettebb S4 OOP modell pedig a Methods részben található.

Végül nézzünk meg néhány egyszerű trükköt az R munkamenet során kapott munka eredményének mentéséhez:

° sink(file= fájlnév) - a következő parancsok végrehajtásának eredményét valós időben adja ki egy adott nevű fájlba; a parancs leállításához a sink () parancsot paraméterek nélkül kell végrehajtani;

° save(file=fájlnév, mentendő objektumok listája) – a megadott objektumokat bináris XDR formátumú fájlba menti, amely bármely operációs rendszeren használható;

° load(file= fájlnév) - visszaállítja a mentett objektumokat az aktuális környezetben;

° save.image(file= fájlnév) - a munka során létrehozott összes objektumot elmenti R-specifikus rda fájl formájában.

A fentebb ebben a részben mutattunk be egy példát az adatokkal generált táblázat vágólapra átvitelére Excel-lap szerkezetével kompatibilis formátumban. A 6. fejezet egy példát mutat be adatok átvitelére lineáris modellobjektumból Word fájlba.

Az R környezet szinte bármilyen megjelenítési felbontáshoz vagy nyomtatóeszközhöz képes megfelelő minőségű pixelképet generálni, valamint az így létrejövő grafikus ablakokat különféle formátumú fájlokban elmenteni. Minden grafikus kimeneti eszközhöz tartozik egy illesztőprogram-funkció: az illesztőprogramok teljes listájához írja be a help(Devices) parancsot.

A leggyakrabban használt grafikus eszközök a következők:

° windows() - grafikus Windows ablak(képernyő, nyomtató vagy metafájl).

° png(), jpeg(), bmp(), tiff() - kimenet a megfelelő formátumú bittérkép fájlba;

° pdf(),postscript() - kimenet grafikus információk V PDF fájl vagy PostScript.

Ha végzett a kimeneti eszközzel, tiltsa le az illesztőprogramot a dev.off() paranccsal. Lehetőség van egyidejűleg több grafikus kimeneti eszköz aktiválására és azok közötti váltásra: lásd például Shipunov et al. könyvének megfelelő szakaszát. (2012, 278. o.).

1. AZ R NYELV LEÍRÁSA

2.1. R adattípusok Az R-ben lévő összes adatobjektum (és így változók) a következő osztályokba (azaz objektumtípusokba) oszthatók:

° numerikus – egész számokat (integer) és valós számokat (double) tartalmazó objektumok;

° logikai - logikai objektumok, amelyek csak két értéket vesznek fel: FALSE (rövidítve F) és TRUE (T);

° karakter – karakteres objektumok (a változók értékeit dupla vagy szimpla idézőjelben adjuk meg).

Az R nyelvben különféle objektumok (függvények vagy változók) neveket hozhat létre latin és cirill betűkkel, de ne feledje, hogy a (cirill) és a (latin) két különböző objektum. Ráadásul az R környezet megkülönbözteti a kis- és nagybetűket, pl. a kis- és nagybetűk különböznek egymástól. Az R változóneveinek (azonosítóinak) betűvel (vagy ponttal) kell kezdődniük, és betűkből, számjegyekből, pontokból és aláhúzásjelekből kell állniuk.

Egy csapat segítségével? A név ellenőrizheti, hogy létezik-e adott nevű változó vagy függvény.

Annak ellenőrzését, hogy egy változó egy adott osztályba tartozik-e, az is.numeric(object_name), is.integer(name), is.logical(name), is.character(name) függvények ellenőrzik, valamint az objektum másik típusba való konvertálása. , használhatja az as.numeric függvényeket (név), as.integer(name), as.logical(name), as.character(name).

Az R-ben számos speciális objektum található:

° Inf - pozitív vagy negatív végtelen (általában egy valós szám 0-val való elosztásának eredménye);

° NA - "hiányzó érték" (nem elérhető);

° NaN - "nem szám" (Not a Number).

Az is.nite(name), is.na(name) és is.nan(name) függvényekkel ellenőrizheti, hogy egy változó e speciális típusok közé tartozik-e.

Az R kifejezés olyan elemek kombinációja, mint egy hozzárendelési operátor, aritmetikai vagy logikai operátorok, objektumnevek és függvénynevek. A kifejezés végrehajtásának eredménye általában azonnal megjelenik a parancs- vagy grafikus ablakban. Ha azonban hozzárendelési műveletet hajtanak végre, az eredményt a rendszer a megfelelő objektumban tárolja, és nem jelenik meg a képernyőn.

Az R-ben hozzárendelési operátorként használhatja a „=“ szimbólumot vagy a „-“ karakterpárt (meghatározott érték hozzárendelése egy bal oldali objektumhoz) vagy „-“ (érték hozzárendelése egy objektumhoz a bal oldalon) jobb). Jó programozási stílusnak tekinthető a „-“ használata.

Az R kifejezések egy szkriptben sorok szerint vannak rendezve. Egy sorba több parancsot is beírhat, ezeket a „;“ szimbólummal elválasztva. Egy parancs két (vagy több) sorba is elhelyezhető.

A numerikus típusú objektumok kifejezéseket képezhetnek a hagyományos számtani műveletekkel + (összeadás), - (kivonás), * (szorzás), / (osztás), ^ (hatványozás), %/% (egész osztás), %% (maradék) felosztásból). A műveletek normál elsőbbséget élveznek, pl. először a hatványozást, majd a szorzást vagy osztást, majd az összeadást vagy kivonást hajtják végre. Zárójelek használhatók a kifejezésekben, és ezekben az operátorok a legmagasabb prioritásúak.

Logikai kifejezések a következő logikai operátorok használatával hozhatók létre:

° "Egyenlő" == ° "Nem egyenlő" != ° "Kisebb, mint" ° "Nagyobb, mint" ° "Kisebb vagy egyenlő" = ° "Nagyobb vagy egyenlő" = ° "Logikai ÉS" & ° "Logikai VAGY" | ° "Logikai NEM" !

TÁMOGATÁS, OUTSOURCING ÉS ALAP ADMINISZTRÁCIÓ 2 Az AMICORP GROUP KÜLÖNZIK KI A TÖMEGBŐL w w w.am icor p. c om AMICORP GROUP CÉG TEVÉKENYSÉGI TERÜLETEI TARTALOM A CÉGRŐL SZOLGÁLTATÁSAINK Vállalati ügyfelek szolgáltatásai Intézményi értékesítési szolgáltatások A...»

„Szövetségi Állami Oktatási Költségvetési Felsőoktatási Intézmény „Pénzügyi Egyetem az Orosz Föderáció kormánya alatt” „Marketing” Osztály A MARKETING MODERN IRÁNYAI: ELMÉLET, MÓDSZERTAN, GYAKORLAT GYAKORLATI MONOGRÁFIA Az S.V. általános szerkesztése alatt. Karpova Moszkva 2011 Értékelők: N.S. Perekalina - a közgazdaságtan doktora, professzor, vezető. Tanszék "Marketing" "MATI" - Orosz Állami Műszaki Egyetem. K. E. Ciolkovszkij S.S. Szolovjov..."

„Malko digitális üzenetküldő a KÁVÉZÓ- és TEAOKTATÁSHOZ: Ch. Szerkesztő: Vesela Dabova Br. 4 Decemvri, 2011 Szerkesztő: Pihenjen Teodor Vasziljev teájával Gergana Ivanov Kiadó: ABB Hány esetben van a szervezetben vagy teaital bevételekor és hogyan gyengül minden esetben fogyasztás egy csésze teára. Különféle vélemények vannak a Tasi-elmélet megbízhatóságáról, de kevés bizonyíték van arra, hogy egy csésze teát beszámítanak a meghatározott rezsimből…

«NEMZETKÖZI INTERDISZCIPLINÁRIS TUDOMÁNYOS KONFERENCIA RADICAL SPACE IN BETWEEN DISCIPLINES RCS 2015 KONFERENCIA KÖNYVE SZERKESZTŐK Romana Bokovi Miljana Romana Zekovi Slaana Milievi SZÁD / SZERBIA / Space Szerkesztők Szerkesztők Mi-BétN23/Szeptember 1. Disciplina Blieiskov 21. sz. : 978-86-7892-733-1 Nyilatkozat: Maja Momirov Borítóterv: Stefan Vuji Kiadja a Műszaki Tudományok Kar Építészeti és Urbanisztikai Tanszéke,...»

"SZENTPÉTERVÁRI ÁLLAMI EGYETEM Földrajzi és Geoökológiai Kar Geomorfológiai Tanszék DOKUMENTÁCIÓ (záró minősítő munka) a következő témában: "Az Északi-sarkvidéki tavak geomorfológiai jellemzői és paleoklímája (az orosz sarkvidék központi szektorának tavai példáján)" Elkészült írta: az esti tagozat hallgatója Morozova Elena Aleksandrovna Tudományos témavezetők: d.g.s., prof. Bolsiyanov Dmitrij Jurjevics Előadó Saveljeva Larisa Anatoljevna Lektor: a geológiai tudományok kandidátusa, vezető...»

„Apacer M811 egér – lézeres mini-SUV készlet. http://news.kosht.com/computer/mouse/2009/11/26/mysh_apacer_m811. KOSHT.com napi árkereső bővítmény ehhez Firefox böngésző. Telepítés Egy kattintással. Egy kilobájt. Kezdőlap Hírek Árak Hirdetmények Állások Fórumok Cégek Moby Keresés Hírek keresése Összes KOSHTA hír PC-k és tartozékok Egerek PC-k és tartozékok Egerek Minden KOSHTA hír Legjobb játék számítógépek Online számítás az UltraPrice.by Apacer M811 egérnél – lézeres mini SUV [...»

"SZÖVETSÉGI OKTATÁSI ÜGYNÖKSÉG ÁLLAMI SZAKMAI FELSŐOKTATÁSI INTÉZMÉNY MOSZKVA ÁLLAMI IPARI EGYETEM (GO MGIU)" INFORMÁCIÓS RENDSZEREK ÉS TECHNOLÓGIÁK információs rendszerek» Chumakova Tatyana Andrevna hallgató a "Gyengén áramvonalas test mögött elválasztott áramlások számítása" témában A munka témavezetője: prof., Ph.D. n. Alekszin Vlagyimir Adamovics ... "

„R WIPO A/45/3 EREDETI: angol DÁTUM: 2008. augusztus 15. SZELLEMI TULAJDON VILÁGSZERVEZETE A WIPO TAGÁLLAMOK GENFI GYŰLÉSE Negyvenötödik üléssorozat Genf, 2008. szeptember 22-30. Vezérigazgató I. NEMZETKÖZI NEM KORMÁNYZATI SZERVEZETEK MEGFIGYELŐKÉNT FELVÉTELE 1. A Közgyűlések korábbi üléseiken elfogadták azokat az alapelveket, amelyeket a nemzetközi civil szervezetekhez történő küldéskor alkalmazni kell...”

„1 Oleg Szanajev. NÉGY ÉV ALATT TOVÁBB KERÜL A VILÁG SZÁZ DOLLÁROS KÖLTSÉGÉBEN A címben jelzett Jevgenyij Alekszandrovics Gvozdev Lena jachton való utazási feltételeivel minden rendben van - négy év plusz két hét: 1992. július 7-én távozott. Makhacskala kikötőjébe 1996. július 19-én tért vissza. De pénzzel - egyértelmű túlzás, vagy inkább alulmondás: természetesen nem élhetsz meg száz dollárból négy évig -, akkor kinyújtod a lábad. De az utazás megkezdésekor Gvozdev pontosan ennyivel rendelkezett. És legalább a lábak..."

« Menedzsment Intézet, Kutatóegyetem Belgorod Állami Nemzeti Kutatóegyetem BIZTONSÁGKIALAKÍTÁSI TECHNOLÓGIÁK AZ ÁLLAMI ÉS ÖNKORMÁNYZATI ÉS ÖNKORMÁNYZATI SZOLGÁLTATÁSI SZOLGÁLTATÁS JELÖLT ÁLLAM KIALAKULÁSÁNAK BIZTOSÍTÁSA Megjegyzés: Összefoglalás: A cikk a...»

„Lidiya YANOVSKAYA MEGJEGYZÉSEK MIHAIL BULGAKOV MOSZKVA „SZÖVEG”RŐL UDC 821.161.1 BBK 84 (2Ros-Rus)6-44 Y64 ISBN 978-5-7516-0660-2 ISBN 978-93LLC-716 ) „Szöveg”, 2007 „BRAVO, BIS, ZÁLOGHOZ!” "BRAVO, BIS, ZÁLOGHOZ!" Nem tudom, hol található ma Moszkvában a Yunost magazin szerkesztősége. Létezik még ilyen magazin? A 70-es évek közepén Moszkva legfiatalabb és legszebb szerkesztősége a Sadovaya-Triumfalnaya-n, a Majakovszkij tér mellett található, egy kicsi, de rendkívül kényelmes helyiségben ... "

„A 2013. évi PÁLYÁZATI JELENTKEZÉSI LAP 1. számú melléklete „T” nyomtatvány. Az RHF-re benyújtott pályázat címlapja Projekt neve Projektszám Projekt típusa (a, c, d, e, f) Tudásterület (kód) RHF osztályozó kód GRNTI kód ​​(http://www.grnti.ru/) Prioritás iránya tudomány és technológia fejlesztése és technikusai az Orosz Föderációban, kritikus technológia1 Vezetéknév, név, a vezető apaneve A projekt projektmenedzsere elérhetőségi telefonszáma A szervezet teljes és rövid neve, amelyen keresztül...”

«FNI jelentés 8/2014 Az EU éghajlat- és energiapolitikáinak végrehajtása Lengyelországban: az európaiasodástól a polonizációig? Jon Birger Skjrseth Az EU éghajlat- és energiapolitikájának végrehajtása Lengyelországban: az európaiasodástól a polonizációig? Jon Birger Skjrseth [e-mail védett] 2014. december Copyright © Fridtjof Nansen Institute 2014 Cím Az EU éghajlat- és energiapolitikáinak végrehajtása Lengyelországban: az európaizálástól a polonizációig? Kiadvány típusa és oldalszáma FNI jelentés 8/2014 57 Szerző ISBN 978-82-7613-683-8 Jon...”

""Scientific Notes TOGU" Volume 6, No. 4, 2015 ISSN 2079-8490 Elektronikus tudományos kiadvány "Scientific Notes TOGU" 2015, Volume 6, No. 4, S. 173 - 178 Certificate El No. FS 77-396566 dated d. .2010 http://pnu.edu.ru/ru/ejournal/about/ [e-mail védett] UDC 316.33 © 2015 I. A. Gareeva, a szociológia doktora. Sci., A. G. Kiseleva (Csendes-óceáni Állami Egyetem, Habarovszk) A TÁRSADALOMBIZTOSÍTÁSI RENDSZEREK KIALAKULÁSA Ez a cikk a társadalombiztosítási rendszerek kialakulását és jelenlegi állapotát elemzi...»

Konferenciaprogram Chiang Mai, Thaiföld, 2015. november APCBSS Asia – Pacific Conference on Business & Social Sciences ICEI International Conference on Education Innovation APCLSE Asia-Pacific Conference on Life Science and Engineering APCBSS Asia – Pacific Conference on Business & Social Sciences ISBN978-986-90263 -0-7 ICEI International Conference on Education Innovation ISBN 978-986-5654-33-7 APCLSE Asia-Pacific Conference on Life Science and Engineering ISBN 978-986-90052-9-6 Tartalomtartalom..."



Betöltés...
Top