install.packages("tidyverse")
1 Wprowadzenie
1.1 R i R Studio
1.1.1 R
- R jest językiem programowania oraz środowiskiem obliczeniowym pozwalającym na analizę statystyczną danych oraz wizualizację danych.
- Najnowsza wersja R jest dostępna na https://cran.r-project.org/
1.1.2 R Studio
R Studio to zintegrowane środowisko programistyczne (IDE) dla języków R i Python. Zawiera konsolę, edytor podświetlania składni, który obsługuje bezpośrednie wykonywanie kodu oraz narzędzia do wyświetlania, historii, debugowania.
RStudio jest dostępne w wersjach open source i komercyjnych i działa na komputerach stacjonarnych (Windows, Mac i Linux).
Najnowsza wersja R Studio dostępna jest na stronie https://posit.co/products/open-source/rstudio/
1.1.3 Pakiety
Pakiety R to zbiory funkcji, dokumentacji i danych rozszerzających podstawową funkcjonalność R
Podstawowe pakiety są instalowane wraz z R i są dostępne od razu po uruchomieniu R. Zapewniają one niezbędną składnię i polecenia do programowania, obliczeń, tworzenia grafiki, podstawowej arytmetyki i podstawowych funkcji statystycznych.
Dodatkowe pakiety dodają możliwość implementacji różnych technik statystycznych i metod przetwarzania i wizualizacji danych.
Głownym źródłem pakietów jest CRAN (ang. Comprehensive R Archive Network) - https://cran.r-project.org/. Na lipiec 2024 CRAN dostarcza ponad 21000 pakietów dotyczących różnych dziedzin (https://cran.r-project.org/web/views/)
Pakiety udostępniane są także na GitHub.
Przykłady pakietów:
ggplot2
- pakiet dostarczający funkcji do wizualizacji danychdplyr
- pakiet dostarczający funkcji do przetwarzania danychtidyverse
- zbiór pakietów do przetwarzania i analizy danych (https://www.tidyverse.org/)sf
- pakiet pozwalający na pracę z danymi przestrzennymi w Rterra
- pakiet pozwalający na pracę z danymi przestrzennymi w R
Instalacja pakietów
Wczytywanie pakietów
library(tidyverse)
1.2 R Markdown i Quarto
R dostarcza także narzędzi do tworzenia raportów, które łączyć będą w jednym pliku kod, tekst oraz ryciny. Takie raporty można tworzyć z pomocą R Markdown oraz Quarto.
1.2.1 R Markdown
- WWW: https://rmarkdown.rstudio.com/
- prosty język znaczników do formatowania tekstu
- daje możliwość powtarzalności (ang. reproductivity) wyników.
- może zawierać tekst, ryciny oraz fragmenty kodu.
- pozwala na wyeksportowanie dokumentu do formatów html, MS Word, PDF.
Aby otworzyć pusty dokument R Markdown w R Studio należy wskazać: File - New File - R Markdown
1.2.2 Quarto
- WWW: https://quarto.org/
- wielojęzyczna wersja R Markdown nowej generacji firmy Posit, zawierająca wiele nowych funkcji i możliwości.
więcej informacji:
pierwszy dokument z Quarto: https://quarto.org/docs/get-started/hello/rstudio.html
podstawowa składnia markdown: https://quarto.org/docs/authoring/markdown-basics.html
1.2.3 Formatowanie tabel
Formatowanie tabel w dokumencie HTML:
- Pakiet
kableExtra
dostarcza dodatkowych opcji formatowania tabel. - WWW: https://cran.r-project.org/web/packages/kableExtra/vignettes/awesome_table_in_html.html
- Pakiet
Formatowanie tabel w dokumencie HTML, MS Word lub PDF:
- pakiet
flextable
dostarcza funkcji do formatowania tabel niezależnie od formy wynikowego pliku (HTML, MS Word, PDF). - WWW: https://cran.r-project.org/web/packages/flextable/index.html
- Vignietes: https://ardata-fr.github.io/flextable-book/
- pakiet
1.3 Dane
1.3.1 Gapminder
Dane z pakietu gapminder
składają się z 1704 obserwacji oraz 6 zmiennych:
- country - zmienna czynnikowa składająca się z 142 poziomów
- continent - zmienna czynnikowa składająca się z 5 poziomów
- year - dane dla lat 1952 - 2007, co 5 lat.
- lifeExp (ang. life expectancy at birth) - oczekiwana długość trwania życia
- pop - ogólna liczba ludności
- gdpPercap - PKB na osobę
?gapminder
No documentation for 'gapminder' in specified packages and libraries:
you could try '??gapminder'
str(gapminder)
Classes 'tbl_df', 'tbl' and 'data.frame': 1704 obs. of 6 variables:
$ country : Factor w/ 142 levels "Afghanistan",..: 1 1 1 1 1 1 1 1 1 1 ...
$ continent: Factor w/ 5 levels "Africa","Americas",..: 3 3 3 3 3 3 3 3 3 3 ...
$ year : int 1952 1957 1962 1967 1972 1977 1982 1987 1992 1997 ...
$ lifeExp : num 28.8 30.3 32 34 36.1 ...
$ pop : int 8425333 9240934 10267083 11537966 13079460 14880372 12881816 13867957 16317921 22227415 ...
$ gdpPercap: num 779 821 853 836 740 ...
1.3.2 Dane meteorologiczne
Dane w pliku pomiary_pol.csv składają się z 1500 obserwacji oraz 11 zmiennych:
- pomiar_id - id posterunku pomiarowego
- tmin_4 - minimalna temperatura powietrza w kwietniu
- tmax_4 - maksymalna temperatura powietrza w kwietniu
- tmin_9 - minimalna temperatura powietrza we wrześniu
- tmax_9 - maksymalna temperatura powietrza we wrześniu
- annual_tavg - średnia roczna temperatura powietrza
- annual_precip - roczna suma opadów (mm)
- prow_id - id prowincji (od 1 do 7)
- woj_id - id województwa
- prowincja - zmienna tekstowa - nazwa jednego z 7 regionów
- województwo - zmienna tekstowa - nazwa województwa
= read.csv("data/pomiary_pol.csv") pomiary_pol
str(pomiary_pol)
'data.frame': 1500 obs. of 11 variables:
$ pomiar_id : int 1 2 3 4 5 6 7 8 9 10 ...
$ tmin_4 : num 1.8 4.12 3.75 3.65 2.79 ...
$ tmax_4 : num 12 14.4 12.6 12.2 12.6 ...
$ tmin_9 : num 6.95 9.21 9.51 9.74 7.99 ...
$ tmax_9 : num 17.8 19.3 17.8 17.7 17.8 ...
$ annual_tavg : num 6.53 8.14 7.83 7.85 7.3 ...
$ annual_precip: num 865 645 613 638 546 ...
$ prow_id : int 2 6 4 4 4 2 4 6 4 4 ...
$ woj_id : int 6 13 16 16 3 9 2 9 14 8 ...
$ prowincja : chr "Karpaty Zachodnie z Podkarpaciem Zachodnim i Północnym" "Wyżyny Polskie" "Niż Środkowoeuropejski" "Niż Środkowoeuropejski" ...
$ wojewodztwo : chr "małopolskie" "świętokrzyskie" "zachodniopomorskie" "zachodniopomorskie" ...