-
Notifications
You must be signed in to change notification settings - Fork 0
/
01_uvod_do_R_1.qmd
100 lines (73 loc) · 4.81 KB
/
01_uvod_do_R_1.qmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
# R & RStudio
::: callout-warning
## Cíle cvičení
- Naučit se založit projekt
- Rozeznat Základní soubory projektu a prostředí
- Projekt či součást projektu uložit a otevřít
- Orientovat se v hlavním okně
- Přepínat mezi výpočtem v konzoli a skriptu
:::
R je *volně dostupné programové prostředí pro statistické výpořty a grafiku*. Interpretr jazyka se základní funkcionalitou lze stáhnout ze stránek [https://www.r-project.org](https://www.r-project.org).
RStudio (dnes také společnost Posit Inc.) je integrované vývojové prostředí (IDE), specializované pro práci s jazykem R. Obsahuje řadu užitečných nástrojů usnadňujících organizaci, tvorbu reportů, práci s SQL databázemi, vývojem funkčních balíčků a mnoho dalšího.
## Hlavní okna a panely
![Obr. 1: Základní layout prostředí RStudio.](images/main.png){#fig-zakladniRstudio}
V základním zobrazení @fig-zakladniRstudio bychom měli v levé části vidět panel **Console**.
S konzolí nebudeme pracovat příliš intenzivně, slouží zejména k zadávání jednoduchých příkazů,
například vyhodnocení proměnné. Pravou část vidíme rozdělenu na dolní a horní polovinu.
V té horní jsou důležité panely **Environment** kde se nachází všechny objekty a
vlastní funkce, které jsme vytvořili v rámci *session*. Dále
Výchozí rozvržení je možné měnit ***Tools*** > ***Global options...*** > ***Pane layout***.
::: callout-tip
## Úloha
1. Provedeme jedno užitečné nastavení duhových závorek
![Obr. 2: Nastavení duhových závorek a dalších vlastností v okně ***Global Options...*** ](images/rainbow-parentheses.png){fig-align="center" width="510"}
:::
## Zakládáme projekt
Je vhodné seskupovat svoji práci do zv. projektů - ucelených souborů skriptů, dat a výstupů - podle jednotlivých projektů, kterým se věnuji.
1. Při spuštěném programu z hlavní nabídky vybereme ***File** \> **New Project...***
![Obr. 2 - Volba typu založení projektu](images/new_project.png){width="451"}
2. Vybereme ***New Directory*** a zvolíme ***New Project***. Ostatní možnosti v tomto kurzu využívate nebudeme.
![Obr. 3 - Volba typu projektu](images/new_directory.png){width="459"}
3. Projektu je dále nutné zadat název ***Directory name***. Pokud používate verzovací systém Git, můžete zaškrtnout volbu ***Create a git repository***. V tomto kurzu používat nebudeme.
![Obr. 3 - Volba umístění a názvu projektu](images/new_project_name.png){width="457"}
4. Po úspěšném založení projektu by se mělo zobrazit hlavní okno programu s přednastvenými panely. V nastavení učeben ČZU odpovídá rozvržení 1. obrázku.
::: callout-tip
## Úloha
2. Vytvořte projekt s názvem "MVVD_cv1".
:::
## Pracovní postup a jeho opakovatelnost
K systematické práci a analýze zejména v exaktních vědách patří dodržování jistých pracovních zásad, které umožňují jednak objektivní kontrolu výsledků a jednak jejich opětovného získání. Níže je uvedeno pár zásad, jejichž dodržování vede k celkové duševní pohodě a rovnováze jak vaší vlastní, tak kolegů.
- Při psaní kódu se řiďte unifikovaným schématem jmenných konvencí, odsazování a vkládání mezer, a komentování.
Jedno takové má například [Hadley Wickham](http://adv-r.had.co.nz/Style.html),
či [Google](https://google.github.io/styleguide/Rguide.html).\
- Každé cvičení začněte ideálně tvorbou nového projektu v oddělené složce, nebo alespoň nového skriptu.\
- Při zavírání RStudio neukládejte pracovní prostředí do souboru "\*.RData". Uloží se do něj vše co máte právě v **Environment**, což nemusí nutně pocházet z pracovního postupu uchovaného ve skriptech (byť při dodržování jiných zásad z tohoto sezamu by tomu tak být nemělo).
- R bohužel umožnuje *připínat* a *odepínat* `data.frame` pomocí funkcí `attach()` a
`detach()`, na které je vhodné ihned po přečtení této věty zapomenout.
```{r}
?ls
rm(list = ls())
?objects
```
```{r}
l <- list(A = 1:3, B = 3:5)
attach(l)
A
```
- *dtto* funkce `fix()`, která umožňuje manipulovat s daty formou GUI tabulkového procesoru.
- Naučte se používat `::` značící jmenný prostor, ze kterého funkce pochází.
Například `filter()` je funkce definována ve více jmenných prostorech často
používaných balíčků.
- Oddělujte vzájemně surová data, zpracovaná data, skripty analýz a výstupy.
Souborová struktura projektu může vypadat například takto:
```
~/mzp_analyza/
├── data/
| ├── raw_data/
| └── zpracovana_data/
├── skripty/
| └── 01_load.R
├── vystupy/
| └── 01_liniovy_graf_m_denni_vody.pdf
└── mzp_analyza.RProj
```