R — programovací jazyk a prostředí pro statistiku a analýzu dat

R — programovací jazyk a prostředí pro statistiku a analýzu dat. Otevřený zdroj, bohaté statistické balíčky a nástroje pro datovou analýzu a vývoj statistického softwaru.

Autor: Leandro Alegsa

R je programovací jazyk a svobodné softwarové prostředí pro statistiku a analýzu dat. Je navržen především pro statistické výpočty a vizualizaci dat a stal se standardním nástrojem pro statistiků, analytiky a datové vědy. R je open source (obvykle šířen pod licencí GNU GPL) a nabízí rozsáhlý ekosystém balíčků pro nejrůznější metody analýzy, modelování a reportování.

Krátká historie

Jádro jazyka R vytvořili na začátku 90. let Ross Ihaka a Robert Gentleman na University of Auckland. S rostoucí komunitou přibyly tisíce balíčků distribuovaných přes CRAN (Comprehensive R Archive Network) a další repozitáře, jako je Bioconductor pro bioinformatiku.

Ekosystém a balíčky

  • CRAN – centrální repozitář tisíců balíčků pokrývajících statistiku, grafiku, strojové učení, zpracování textu a další.
  • tidyverse (např. ggplot2, dplyr, tidyr) – sada balíčků pro konzistentní a čitelnou práci s daty a vizualizaci.
  • data.table – rychlé a paměťově efektivní operace nad velkými datovými tabulkami.
  • Shiny – framework pro tvorbu interaktivních webových aplikací přímo z R.
  • Balíčky pro strojové učení (caret, mlr3, randomForest), časové řady, bayesovské modely, genomiku a další.

Hlavní vlastnosti a výhody

  • Široká škála statistických metod a specializovaných algoritmů implementovaných a dostupných v balíčcích.
  • Silná grafická podpora – zejména knihovna ggplot2 pro tvorbu kvalitních a přizpůsobitelných vizualizací.
  • Podpora reproducibility: R Markdown umožňuje kombinovat kód, výstupy a text do jediného reportu nebo prezentace.
  • Velká a aktivní komunita – spousta tutoriálů, knih a fór (Stack Overflow, mailing listy).

Jak R funguje — základní datové struktury

  • Vektor (vector) — základní jednorozměrná struktura pro číselné nebo textové hodnoty.
  • Matice (matrix) — dvourozměrné pole stejného typu dat.
  • Datový rámec (data.frame) — tabulka s různými typy sloupců; základní struktura pro práci s datasetem.
  • Seznam (list) — flexibilní kontejner pro různé typy objektů v jednom objektu.

Integrace a nástroje

  • RStudio je populární integrované vývojové prostředí (IDE) pro R, které usnadňuje psaní kódu, ladění a tvorbu projektů.
  • R se snadno propojuje s databázemi (SQL), s dalšími jazyky (např. Python přes reticulate) a s nástroji pro nasazení (Shiny, Plumber).
  • Podpora běhu na více operačních systémech: Linux, macOS, Windows.

Silné a slabé stránky

  • Silné: bohaté statistické metody, rozsáhlý výběr balíčků, kvalitní grafika a nástroje pro reproducibilitu.
  • Slabé: v některých případech omezená škálovatelnost a spotřeba paměti u velmi velkých datasetů (existují však řešení jako data.table, spojení s databázemi nebo paralelizace).

Příklady použití

  • Průzkumná analýza dat (EDA), vizualizace a reporty.
  • Statistické modelování, lineární a nelineární regresní analýzy, testování hypotéz.
  • Strojové učení: klasifikace, regrese, ensemble metody.
  • Bioinformatika, analýza časových řad, finanční analýzy.
  • Interaktivní dashboardy a webové aplikace přes Shiny.

Začít s R

Pro začátečníky se doporučuje nainstalovat R a následně RStudio. Učit se základy práce s datovými rámci, manipulace pomocí dplyr a tvorby grafů pomocí ggplot2. Vhodné jsou také tutoriály zaměřené na R Markdown pro vytváření reproducibilních reportů.

R zůstává jedním z hlavních nástrojů pro statistiku a analýzu dat díky své specializaci, otevřené povaze a aktivní komunitě, která průběžně vyvíjí nové metody a balíčky.

 

Použití v jiných oblastech

Jazyk R byl původně vytvořen pro statistiku. Dnes se však používá v mnoha vědeckých oborech včetně ekologie.

 

Historie vývoje

Seznam změn ve vydáních R je udržován v různých "news" souborech na CRAN (Comprehensive R Archive Network). Níže jsou uvedeny některé nejdůležitější informace o několika hlavních vydáních.

Vydání

Datum

Popis

0.16

Toto je poslední testovací verze.

0.49

1997-04-23

Jedná se o nejstarší zdrojové vydání, které je v současné době dostupné na síti CRAN. K tomuto datu byl spuštěn CRAN se třemi zrcadly, která zpočátku hostila 12 balíčků.

0.60

1997-12-05

R se stává oficiální součástí projektu GNU. Kód je umístěn a udržován v systému CVS.

0.65.1

1999-10-07

První verze funkcí update.packages a install.packages pro stahování a instalaci balíčků z CRAN.

1.0

2000-02-29

Vývojáři prohlásili, že je dostatečně stabilní pro produkční použití.

1.4

2001-12-19

Jsou představeny metody S4 a brzy poté je k dispozici první verze pro Mac OS X.

1.8

2003-10-08

Zavedení flexibilního mechanismu zpracování podmínek pro signalizaci a zpracování objektů podmínek.

2.0

2004-10-04

Zavedeno rychlé načítání dat s minimálními náklady na systémovou paměť.

2.1

2005-04-18

Podpora kódování UTF-8. Začali také s internacionalizací a lokalizací pro různé jazyky.

2.6.2

2008-02-08

Poslední verze podporující Windows 95, 98, Me a NT 4.0

2.11

2010-04-22

Podpora 64bitových systémů Windows.

2.12.2

2011-02-25

Poslední verze podporující systém Windows 2000

2.13

2011-04-14

Přidání nové funkce překladače, která umožňuje zrychlit funkce převodem na bajtový kód.

2.14

2011-10-31

Přidány povinné jmenné prostory pro balíčky. Přidán nový paralelní balíček.

2.15

2012-03-30

Nové funkce vyrovnávání zátěže. Vylepšená rychlost serializace dlouhých vektorů.

3.0.0

2013-04-03

Podpora číselných hodnot indexů 231 a větších na 64bitových systémech.

3.3.3

2017-03-06

Poslední verze podporující Microsoft Windows XP.

3.4.0

2017-04-21

Ve výchozím nastavení je povolena kompilace funkcí a smyček do bajtového kódu v režimu Just-in-time (JIT).

3.5.0

2018-04-23

Balíčky jsou ve výchozím nastavení při instalaci zkompilovány do bajtů. Kompaktní vnitřní reprezentace celočíselných posloupností. Přidán nový serializační formát podporující kompaktní vnitřní reprezentaci.

3.6.0

2019-04-26

4.0.0

2020-04-24

 

Společenství

R má místní komunity po celém světě, kde se uživatelé mohou dělit o nápady a učit se.

Roste počet akcí, které sdružují uživatele R, jako jsou konference (např. useR!, WhyR?, conectaR, SatRdays) a další setkání.

 

useR! konference

Oficiální každoroční setkání uživatelů R se nazývá "useR!". První takovou akcí bylo useR! 2004 v květnu 2004 ve Vídni v Rakousku. Po vynechání roku 2005 se konference useR! koná každoročně. Mezi následné konference patřily např:

  • useR! 2006, Vídeň, Rakousko
  • useR! 2007, Ames, Iowa, USA
  • useR! 2008, Dortmund, Německo
  • useR! 2009, Rennes, Francie
  • useR! 2010, Gaithersburg, Maryland, USA
  • useR! 2011, Coventry, Velká Británie
  • useR! 2012, Nashville, Tennessee, USA
  • useR! 2013, Albacete, Španělsko
  • useR! 2014, Los Angeles, Kalifornie, USA
  • useR! 2015, Aalborg, Dánsko
  • useR! 2016, Stanford, Kalifornie, USA
  • useR! 2017, Brusel, Belgie
  • useR! 2018, Brisbane, Austrálie
  • useR! 2019, Toulouse, Francie

V budoucnu se plánují tyto konference:

  • useR! 2020, St. Louis, Missouri, USA (zrušeno)
  • useR! 2021, Curych, Švýcarsko
 

The R Journal

R Journal je volně přístupný recenzovaný časopis projektu R. Obsahuje články o používání a vývoji jazyka R.

 

Základní syntaxe

Následující příklady ilustrují základní syntaxi jazyka a použití rozhraní příkazového řádku.

V jazyce R je obecně preferovaným operátorem přiřazení šipka složená ze dvou znaků <-. I když místo něj lze použít =.

> x <- 1:6 # Vytvoření vektoru. > y <- x^2 # Vytvoření vektoru podle vzorce. > print(y) # Vypsání obsahu vektoru. [1] 1 4 9 16 25 36 > mean(y) # Aritmetický průměr vektoru. [1] 15,16667 > var(y) # Vzorek rozptylu vektoru. [1] 178.9667 > model <- lm(y ~ x) # Lineární regresní model y = A + B * x. > print(model) # Vypište výsledky modelu.  Volání: lm(vzorec = y ~ x) Koeficienty: (Intercept) x -9,333 7,000 > summary(model) # Zobrazte podrobný souhrn modelu.  Volání: lm(formula = y ~ x) Residuály:       1 2 3 4 5 6 3,3333 -0,6667 -2,6667 -2,6667 -0,6667 3,3333 Koeficienty: 1:             (Intercept) -9,3333 2,8441 -3,282 0,030453 * x 7,0000 0,7303 9,585 0,000662 *** --- Signif. kódy: 0 "***" 0,001 "**" 0,01 "*" 0,05 "." 0,1 " ' 1 Reziduální standardní chyba: 3,055 na 4 stupních volnosti Vícenásobný R-kvadrát: 3,055 na 4 stupních volnosti:  0,9583, upravený R-squared:  0,9478 F-statistika: 91,88 na 1 a 4 DF, p-hodnota: 0,000662 > par(mfrow = c(2, 2))  # Vytvořte rozložení 2 na 2 pro obrázky. > plot(model) # Výstup diagnostických grafů modelu.

Diagnostic plots from plotting “model” (q.v. “plot.lm()” function). Notice the mathematical notation allowed in labels (lower left plot).

 

 


Vyhledávání
AlegsaOnline.com - 2020 / 2025 - License CC3