Grafická prezentace a numerické modelování geochemických dat Základy programovacího jazyka R (II.)

Podobné dokumenty
Pracovní text a úkoly ke cvičením MF002

Grafická prezentace a numerické modelování geochemických dat

Velmi stručný návod jak dostat data z Terminálu Bloomberg do R

Ovládání Open Office.org Calc Ukládání dokumentu : Levým tlačítkem myši kliknete v menu na Soubor a pak na Uložit jako.

UniLog-D. v1.01 návod k obsluze software. Strana 1

vyneste graf A/CNK A/NK, zobrazte v něm linie A/CNK=1, A/NK = 1 a A/CNK=A/NK

Na obrázku níže je vidět jedno z možných nastavení umístění grafu Ve sloupci pro graf. Spuštění první plovoucí sady. Spuštění druhé plovoucí sady

RNDr. Marie Forbelská, Ph.D. 1

6. Statistica (pokračování) Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Jarkovský, L. Dušek, M. Cvanová

Analýza dat na PC I.

Excel tabulkový procesor

Standardně máme zapnutý panel nástrojů Formátování a Standardní.

POPISNÁ STATISTIKA Komentované řešení pomocí programu Statistica

Úvod do programu STATISTICA. Mgr. Pavel Zahradníček

Nápověda k aplikaci GraphGUI

Nejčastější chyby v explorační analýze

www. www g. r g ad ra a d.c a. z Kniha obsahuje tato témata: Příklady k procvičování zdarma ke stažení na

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 6. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28.

Grafické výstupy v Octave/Matlabu a GnuPlotu

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Návod k použití softwaru Solar Viewer 3D

Popisná statistika. Komentované řešení pomocí MS Excel

MĚŘENÍ TEPLOTY. MĚŘENÍ ODPOROVÝM SNÍMAČEM S Pt 100

STATISTICA Téma 1. Práce s datovým souborem

Pravidla pro tvorbu tabulek a grafů v protokolech z laboratoří fyziky

CZ.1.07/2.2.00/ )

UniLog-L. v0.81 návod k obsluze software. Strana 1

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Grafy v R. Barvy. kódu. Doporučuji využívat předdefinovaných palet, dostupné jsou tyto: heat

Formátování pomocí stylů

Microsoft Word 2010 prostředí MS Wordu, práce se souborem

Manuál k programu KaraokeEditor

Recognoil RRW Manager rychlý návod k obsluze

Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Jarkovský, L. Dušek, M. Cvanová. 5. Statistica

Předmluva 11 Typografická konvence použitá v knize Úvod do Excelu

I. Příprava dat Klíčový význam korektního uložení získaných dat Pravidla pro ukládání dat Čištění dat před analýzou

Projektová dokumentace GED 2006

Název DUM: VY_32_INOVACE_2B_16_ Tvorba_grafů_v_MS_Excel_2007

Excel tabulkový procesor

Vzdělávání v egoncentru ORP Louny

Hlavní okno aplikace

Tabulkový procesor otázka č.17

M praktikum : M0130pr03

Tabulkové processory MS Excel (OpenOffice Calc)

Průvodce Vyúčtování s přehledem

IBRIDGE 1.0 UŽIVATELSKÝ MANUÁL

BALISTICKÝ MĚŘICÍ SYSTÉM

Lineární algebra s Matlabem cvičení 3

Naučte se víc... Microsoft Office Excel 2007 PŘÍKLADY

Excel - pokračování. Př. Porovnání cestovních kanceláří ohraničení tabulky, úprava šířky sloupců, sestrojení grafu

Jeden z mírně náročnějších příkladů, zaměřený na úpravu formátu buňky a především na detailnější práci s grafem (a jeho modifikacemi).

Opravená data Úloha (A) + (E) Úloha (C) Úloha (B) Úloha (D) Lineární regrese

Základní popisné statistiky a grafy

Příprava dat v softwaru Statistica

TVORBA TEXTOVÉHO DOKUMENTU PROSTŘEDKY, PŘENOSITELNOST

František Hudek. červenec 2012

WORD. 4. Texty vyskytují se v dokumentu 3x mají zelenou barvu

TVOŘÍME MAPU V GIS. manuál

Registrační číslo projektu: CZ.1.07/1.5.00/ Název projektu: Moderní škola 21. století. Zařazení materiálu: Ověření materiálu ve výuce:

Jednoduchý návod k použití programu Vinotéka 2006, v 2.0

Práce se styly 1. Styl

Základní popisné statistiky a grafy

Práce s programem MPVaK

Návod k aplikaci DPH Kontrol

Uživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý

Kreslení grafů v Matlabu

Ústav matematiky Fakulta chemicko inženýrská Vysoká škola chemicko-technologická v Praze

Cvičení č. 2 : POLITICKÁ MAPA VYBRANÉHO KONTINENTU

Střední průmyslová škola strojnická Olomouc, tř.17. listopadu 49

Psaní programu pro PLC SIMATIC S7-300 pomocí STEP 7

Pokročilé metody geostatistiky v R-projektu

Pokud data zadáme přes "Commands" okno: SDF1$X1<-c(1:15) //vytvoření řady čísel od 1 do 15 SDF1$Y1<-c(1.5,3,4.5,5,6,8,9,11,13,14,15,16,18.

Modul 2. Druhá sada úkolů:

Tisk do souboru se provádí podobně jako tisk na papír, směřování tisku do souboru je dáno nastavením v ovladači tiskárny:

FORMÁTOVÁNÍ 2. Autor: Mgr. Dana Kaprálová. Datum (období) tvorby: září, říjen Ročník: sedmý. Vzdělávací oblast: Informatika a výpočetní technika

APS mini.ed programová nadstavba pro základní vyhodnocení docházky. Příručka uživatele verze

Excel 2007 praktická práce

MS Excel grafická prezentace dat

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

Jednoduchý návod k použití programu Vinotéka 2007, v 2.2.1

Analýza dat na PC I.

František Hudek. srpen 2012

Aplikované úlohy Solid Edge. SPŠSE a VOŠ Liberec. Ing. Jan Boháček [ÚLOHA 27 NÁSTROJE KRESLENÍ]

Gabriela Janská. Středočeský vzdělávací institut akademie J. A. Komenského

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

GENEALOGIE v praxi. 11. Přednáška Registrace rodokmenu na Internetu

Návod na tvorbu časové přímky v programu Microsoft PowerPoint 2013

STATISTICA Téma 8. Regresní a korelační analýza, regrese prostá

Reliance 3 design OBSAH

Vzorce. Suma. Tvorba vzorce napsáním. Tvorba vzorců průvodcem

Obsah. při vyšetření pacienta. GDT souboru do programu COSMED Omnia GDT souboru z programu COSMED Omnia a zobrazení výsledků měření v programu MEDICUS

Formulář pro křížový filtr

Popis a obsluha vektorového obvodového analyzátoru R&S ZVL

Soukromá střední odborná škola Frýdek-Místek, s.r.o.

Příklady k druhému testu - Matlab

Práce v programu Word 2003

CORELDRAW SEZNÁMENÍ S PROGRAMEM. Lenka Bednaříková

Popis programu EnicomD

Administrace webových stránek

Výukový manuál 1 /64

Transkript:

Grafická prezentace a numerické modelování geochemických dat 2.1.1 Základy programovacího jazyka R (II.) 2.1. Soubory 2.1.1 Vstup dat ze souborů read.table (file, sep="", na.strings="na", dec=. ) Funkce read.table() načte z disku soubor filename, který je rozdělený oddělovačem sep na jednotlivé položky. Separátorem mohou být mj.:, čárka, \t tabulátor, \n konec řádku (= new line). Pokud R nenajde specifikovaný soubor, je pravděpodobně potřeba nastavit pracovní adresář příkazem File Change dir... Normálně se první řádek interpretuje jako jména sloupců a první položka na druhém a následujících řádcích jako jména řádek. Z toho vyplývá, že délka prvního řádku by měla být o jednu položku kratší, než všech následujících. Například: SiO2 TiO2 Al2O3 Fe2O3 FeO Li1 51.73 1.48 16.01 1.03 7.06 Li2 51.88 1.48 15.93 0.99 6.85 Poznámka: data načtená příkazem read.table() jsou uložena do proměnné typu data frame. Pokud ji chceme konvertovat na matici, použijeme funkce as.matrix(): > x<-read.table(filename,sep="\t") > x<-as.matrix(x) 2.1.2 Ukládání datových souborů write.table (x, file = "", append = FALSE, sep = " ", na = "NA", dec = ".", row.names = TRUE, col.names = TRUE) Tato funkce uloží objekt x (vektor, matici, data frame) do souboru, přičemž jednotlivé položky jsou odděleny oddělovačem sep. Podobně jako pro read.table, lze specifikovat řetězce interpretované jako chybějící data a znak pro desetinnou tečku/čárku. Navíc existují logické parametry, řídící, zda mají být uložena také jména řádků nebo sloupců (row.names,col.names) a zda data mají být připojena k již existujícím nebo zda je mají přepsat (append). Cvičení 2.1 Soubor sazava.data obsahuje analýzy hlavních a stopových prvků vybraných granitoidních hornin sázavské suity středočeského plutonu. Tato data použijeme pro ukázku přístupu k datovým souborům a grafických možností jazyka R. načtěte do proměnné WR analýzy uložené v souboru sazava.data zobrazte v tabulce hodnoty SiO 2, MgO a Na 2 O/K 2 O (použijte funkce cbind(); nezapomeňte správně pojmenovat sloupce).

2/2 > WR<-read.table("sazava.data",sep="\t") > x<-cbind(wr[,"sio2"],wr[,"mgo"],wr[,"na2o"]/wr[,"k2o"]) > colnames(x)<-c("sio2","mgo","na2o/k2o") > rownames(x)<-rownames(wr) > x SiO2 MgO Na2O/K2O Sa-1 59.98 3.21 1.008000 Sa-2 55.17 3.67 1.976471 Sa-3 55.09 3.52 1.387255 atd. 2.2. Grafické funkce Jednou z velkých předností R je celá řada funkcí, určených pro vytváření a export grafů v prezentační kvalitě. Existují dva typy grafických funkcí, ty které otevírají nové grafické okno s úplně novým grafem (high-level functions) a ty, které jenom přidávají informaci nebo modifikují diagramy stávající (lowlevel functions). 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Obr. 2.1. Značky, které mohou být zobrazeny grafickými funkcemi R prostřednictvím parametru pch plot (y) Tato funkce vynese seřazené hodnoty vektoru y plot (x,y) Pokud x a y jsou vektory, dostáváme binární xy graf (scatterplot): > plot(wr[,"sio2"],wr[,"mgo"]) # Obr. 2.2a plot (f); plot (f1, f2) Pokud f je faktor, plot() zobrazí sloupcový graf pro jeho jednotlivé hodnoty (levels). Pokud jsou uvedeny faktory dva, graf vypadá obdobně jako na Obr. 2.2b, získaném pro faktory z minulé lekce (soubor ToothGrowth): > plot(zuby,davka) # Obr. 2.2b a WR[, "MgO"] 2 4 6 8 0 5 10 15 20 25 b (1.5,2] (0.5,1] (0,0.5] WR[, "SiO2"] Short Normal Long Superlong Obr. 2.2.a Graf SiO 2 MgO pro granitoidy sázavské suity; b Sloupcový graf ukazující závislost délky zubů morčat na dávce vitamínu C (mg)

Při volání funkce plot() může být uvedeno velké množství parametrů. Mezi nejpoužívanější patří (s příklady): xlab, ylab popis os x a y: xlab="sio2[wt. %]" xlim, ylim rozsah os x a y: xlim=c(50,70) log která z os má být logaritmická? log="xy" pch kód pro značky (Obr. 2.1) nebo přímo symbol jako textový znak: 7, "+", "o", "Q" col barva: 0, "black" 1 type typ diagramu ("p" = body (points), "l" = čáry (lines), "b" = oboje (both), "o" = přepis (overplot), "n" = nic (no plotting)) main hlavní titulek diagramu (nahoře) sub podtitulek diagramu (dole) cex relativní velikost textu nebo symbolů (např. 2 = dvojnásobná) lty typ čáry (číslo 1 6, 1 = normální (solid), 2 = čárkovaná (dashed), 3 = tečkovaná (dotřes), 4 = čerchovaná (dotdash)) lwd relativní tloušťka čáry (např. 2 = dvojnásobná) text (x, y, labels) Tento příkaz zobrazí daný text o souřadnicích [x,y]. Lze ho použít např. pro popis jednotlivých bodů xy grafů: Ba [ppm] 0 500 1000 1500 Gbs-1 Sa-4 Gbs-2 SaD-1 Gbs-3 Sa-2 Gbs-20 Sa-3 Sa-7 Sa-1 Po-1 2/3 Po Po-3 Po SiO2 [hm. %] Obr. 2.3. Diagram SiO 2 Ba pro granitoidy sázavské suity ukazující použití některých parametrů funkce plot() a funkce text() pro popis vynesených bodů 2 4 6 8 > plot(wr[,"sio2"],wr[,"ba"], xlab="sio2[wt. %]", ylab="ba[ppm]", pch="",main="") > text(wr[,"sio2"]+0.2,wr[,"ba"], rownames(wr),adj=0,col="red") > # Obr. 2.3 Parametr adj udává způsob zarovnání textu (0 vlevo, 1 vpravo, 0.5 na střed) 2 4 6 8 SiO2 MgO abline () Příkaz abline() slouží pro vynášení přímek: abline (a,b) sklon b, úsek vyťatý na ose y a abline(h=y) horizontální přímka abline (v=x) vertikální přímka Na2O/K2O 1.0 1.4 1.8 Obr. 2.4. Korelace mezi třemi proměnnými v souboru sazava.data jak je zobrazuje funkce pairs() 1.0 1.4 1.8 1 Funkce colors() zobrazí všechna symbolická jména barev dostupných v R.

2/4 hist (x) zobrazí histogram četností hodnot vektoru x pairs (x) vykreslí binární diagramy pro všechny možné kombinace sloupců matice (dataframe) x: > x<-cbind(wr[,"sio2"],wr[,"mgo"],wr[,"na2o"]/wr[,"k2o"]) > colnames(x)<-c("sio2","mgo","na2o/k2o") > pairs(x) # Obr. 2.4 boxplot (x) Diagram zvaný též box-and-whiskers plot, v němž každý sloupec dataframu x (pro matici jsou všechna data vynesena dohromady do jednoho boxplotu) je zobrazen jako obdélník. Jeho vodorovné strany odpovídají dvěma kvartilům, zobrazena je dále vodorovná příčka (pro medián) a dvě svislé linie (spojující extrémy bez odlehlých hodnot, které bývají vyneseny zvlášť). > WR<-data.frame(WR) > boxplot(wr[,3:9]) # Obr. 2.5 Informace podobné funkci boxplot()v textové formě poskytne funkce summary(): 0 10 20 30 40 50 60 70 SiO2 TiO2 Al2O3 FeO Fe2O3 MnO MgO Obr. 2.5 Data pro některé oxidy hlavních prvků sázavské suity, jak je zobrazuje funkce boxplot() > summary(wr[,3:9]) SiO2 TiO2 Al2O3 FeO Min. :48.84 Min. :0.2800 Min. :13.34 Min. :1.650 1st Qu.:52.02 1st Qu.:0.3100 1st Qu.:15.14 1st Qu.:2.493 Median :55.49 Median :0.6900 Median :16.99 Median :5.445 Mean :57.95 Mean :0.6393 Mean :16.94 Mean :4.731 3rd Qu.:62.21 3rd Qu.:0.7900 3rd Qu.:18.07 3rd Qu.:6.118 Max. :71.42 Max. :1.3500 Max. :21.64 Max. :7.650 Fe2O3 MnO MgO Min. :0.3800 Min. :0.0400 Min. :0.520 1st Qu.:0.7525 1st Qu.:0.0750 1st Qu.:2.032 Median :1.8000 Median :0.1550 Median :3.365 Mean :1.7460 Mean :0.1379 Mean :3.570 3rd Qu.:2.6050 3rd Qu.:0.1675 3rd Qu.:4.805 Max. :3.2800 Max. :0.2500 Max. :8.590

2/5 Cvičení 2.2 Nyní již máme k dispozici nástroje pro poměrně podrobnou grafickou analýzu souboru sazava.data. Podívejme se tedy v detailu na distribuci některých prvků. o zobrazte všechny možné kombinace binárních diagramů následujících oxidů hlavních prvků: SiO 2, MgO, FeO, Fe 2 O 3, CaO, P 2 O 5 o vyneste binární diagram SiO 2 CaO, popište jeho osy a vynesené body. Zvolte vhodný rozsah pro osy x a y. Vytvořte dvě verze, nejprve vyneste všechny body jako modré čtverečky, potom přiřaďte symboly podle jednotlivých horninových typů (použijte pro to data ve sloupci WR[, Symbol ]). Zobrazte linii SiO 2 /CaO = 10 procházející počátkem o vyneste boxplot pro distribuci stroncia a zjistěte příslušné základní statistické charakteristiky (rozsah, medián, počet nestanovených hodnot, ); 200 300 400 500 600 Sr Sr zobrazte Sr data také ve formě histogramu Obr. 2.6. Distribuce Sr v granitoidech sázavské suity (boxplot a histogram četností) o vyneste diagram log(zr) log(ba) ppm 300 350 400 450 500 550 600 frequency 0 1 2 3 4 5 > WR<-read.table("sazava.data",sep="\t") > WR<-as.matrix(WR[,-1]) > oxides<-c("sio2","mgo","feo","fe2o3","cao","p2o5") > pairs(wr[,oxides]) > plot(wr[,"sio2"],wr[,"cao"],xlab="sio2",ylab="cao",pch=15, col="blue",xlim=c(49,75),ylim=c(0,15)) > text(wr[,"sio2"]+0.3,wr[,"cao"],rownames(wr),adj=0) > plot(wr[,"sio2"],wr[,"cao"],xlab="sio2",ylab="cao", pch=wr[,"symbol"],cex=1.5,xlim=c(49,75),ylim=c(0,15)) > abline(0,0.1) > boxplot(wr[,"sr"],main="",sub="sr",ylab="ppm") # Obr. 2.6 > summary(wr[,"sr"]) Min. 1st Qu. Median Mean 3rd Qu. Max. NA's 278.0 392.5 430.0 443.0 537.5 599.0 2.0 > mean(wr[,"sr"],na.rm=t) [1] 443 # Pokud nespecifikujeme parametr na.rm, dostaneme NA protože dvě koncentrace Sr nejsou stanoveny > hist(wr[,"sr"],main="",xlab="sr",ylab="frequency", col="gray40",breaks=4) > plot(wr[,"zr"],wr[,"ba"],xlab="zr",ylab="ba",pch=15,cex=1.5, log="xy")

2/6 2.2.1 Lineární regrese V R jsou buď přímo zabudovány, anebo poskytovány ve formě přídavných balíčků (packages), mnohé statistické funkce. Většina jde mimo rámec tohoto kurzu a zájemce by se měl obrátit na specializované učebnice jazyků R/S (e.g., Venables & Ripley 1999). Po vytváření lineárních modelů slouží funkce lm: lm (model) Pokud je model specifikován jako y~x, funkce lm provede lineární regresi. Například data v SiO 2 Ba diagramu pro sázavskou suitu mohou být proložena přímkou: > plot(wr[,"sio2"],wr[,"ba"],xlab= expression(sio[2]),ylab="ba", pch="",main="",cex=1.5) > lq<-lm(wr[,"ba"]~wr[,"sio2"]) > lq<-lm(ba~ SiO2,data=WR) # alternativa pro dataframes > lq Call: lm(formula = WR[, "Ba"] ~ WR[, "SiO2"]) Ba [ppm] 0 500 1000 1500 SiO2 [hm. %] Obr. 2.7 Diagram SiO 2 Ba sázavské suity proložený funkcí lm(ba~sio2,data=wr) Coefficients: (Intercept) WR[, "SiO2"] -1680.45 43.67 Pokud chceme vědět detaily, celý seznam (list) lq může být zobrazen funkcí summary(): > summary(lq) přičemž objekt lq je připraven k vynesení funkcí abline. > abline(lq,lty=2,lwd=2)# Obr. 2.7 Cvičení 2.3 o vytvořte nový objekt x, jenž bude obsahovat pouze vzorky, jejichž SiO 2 > 55 o vyneste diagram SiO 2 CaO pro tyto vzorky a proložte data přímkou > x<-wr[wr[,"sio2"]>55,] > plot(x[,"sio2"],x[,"cao"],xlab=expression(sio[2]),ylab="cao", pch=15) > lq<-lm(x[,"cao"]~ x[,"sio2"]) > lq

2/7 Call: lm(formula = CaO ~ SiO2, data = x) Coefficients: (Intercept) SiO2 23.4522-0.2782 > abline(lq,lty=2) 2.2.2 Interakce s grafickými objekty Velmi praktickou možností v R je interakce s grafy. Ta například umožňuje interaktivní výběr odlehlých hodnot a označit je názvem vzorku. Nebo lze vybrat určité vzorky jako koncové členy pro petrogenetické modelování. locator () Funkce locator() vrací souřadnice bodů, na něž klikneme levým knoflíkem myši. Ukončení identifikace je pravým tlačítkem. identify(x, y, labels) Tato funkce slouží k interaktivní identifikaci bodů vynesených v diagramech. Typické použití ilustruje následující příklad, v němž uživatel popíše pouze body, které si sám zvolí (levým tlačítkem, pravým končí). > plot(wr[,"sio2"],wr[,"cao"],xlab=expression(sio2),ylab="cao", col="darkred") > identify(wr[,"sio2"],wr[,"cao"],rownames(wr)) 2.2.3 Grafická zařízení Fundamentálním problémem je, jak exportovat grafy z R do textového procesoru, případně grafického programu jako je CorelDraw! k dalším úpravám. Již existující graf lze kopírovat do schránky nebo uložit do souboru kliknutím pravým tlačítkem myši s volbou Save as. Na výběr je celá řada formátů, včetně populárních vektorových (Windows Metafile WMF, PostScript 2 ) a bitmapových (PNG, BMP, JPG). V nových verzích R je také k dispozici možnost výstupu do Adobe PDF. Alternativně lze graf uložit příslušnými položkami menu File. Grafický výstup může být přesměrován na různá grafická zařízení, pod Microsoft Windows se to nejdůležitější jmenuje: windows() odstartuje nové grafické okno par (mfrow = c(nrow, ncol)); par(mfcol = c(nrow, ncol)) rozdělí okno pro nrow ncol dílčí grafy (zaplňovat se budou postupně po řádcích resp. po sloupcích) postscript(filename) grafický výstup bude uložen v PostScriptu do souboru filename. Kvalita je mnohem lepší, než při exportu do formátu Windows Metafile (WMF). graphics.off() zavře všechna grafická okna 2 PostScript je jazyk, který slouží pro profesionální tisk z nejrůznějších programů a operačních systémů. Navíc ho lze bez problémů importovat do vyšších verzí CorelDraw! pro případnou další editaci.