PředmětyPředměty(verze: 945)
Předmět, akademický rok 2023/2024
   Přihlásit přes CAS
Data analysis in R and Python - MG440P44
Anglický název: Data analysis in R and Python
Český název: Analýza dat v prostředí R a Python
Zajišťuje: Ústav petrologie a strukturní geologie (31-440)
Fakulta: Přírodovědecká fakulta
Platnost: od 2020
Semestr: zimní
E-Kredity: 4
Způsob provedení zkoušky: zimní s.:
Rozsah, examinace: zimní s.:1/2, Zk [HT]
Počet míst: neomezen
Minimální obsazenost: 3
4EU+: ne
Virtuální mobilita / počet míst pro virtuální mobilitu: ne
Stav předmětu: vyučován
Jazyk výuky: angličtina, čeština
Poznámka: povolen pro zápis po webu
Garant: prof. Mgr. Vojtěch Janoušek, Ph.D.
doc. Mgr. Ondrej Lexa, Ph.D.
Vyučující: prof. Mgr. Vojtěch Janoušek, Ph.D.
doc. Mgr. Ondrej Lexa, Ph.D.
Anotace -
Poslední úprava: prof. Mgr. Vojtěch Janoušek, Ph.D. (04.03.2019)
Praktický kurz určený studentům vyšších ročníků, popř. postgraduantům. Cílem je a) seznámit účastníky se základními principy zpracování a vizualizace dat v geologii a fungováním počítačových algoritmů obecně; b) vysvětlit základy syntaxe programovacích jazyků R a Python, c) ukázat použití obou jazyků pro jednoduché výpočty, jakož i produkci kvalitních grafických výstupů; d) demonstrovat příklady použití obou jazyků v reprodukovatelném výzkumu (s důrazem na strukturní geologii a horninovou geochemii).
Literatura -
Poslední úprava: doc. RNDr. Petr Jeřábek, Ph.D. (14.03.2019)

Výukové materiály (pouze pro studenty):

https://www.natur.cuni.cz/geologie/petrologie/vyukove-materialy/analyza-dat-v-prostredi-r-a-python

Odkazy:

de Vries A: Using R with Jupyter Notebooks http://blog.revolutionanalytics.com/2015/09/using-r-with-jupyter-notebooks.html

Jupyter: Open source, interactive data science and scientific computing across over 40 programming languages http://jupyter.org/

The R Project for Statistical Computing https://www.r-project.org/

Ponořme se do Python-u http://diveintopython3.py.cz/PonormeSeDoPythonu3single.html

Scientific Python Lecture Notes http://www.scipy-lectures.org

Wikipedie: R (programovací jazyk) https://cs.wikipedia.org/wiki/R_(programovac%C3%AD_jazyk)

Wikipedie: Python (programovací jazyk) https://cs.wikipedia.org/wiki/Python

 

Literatura:

Becker RA, Chambers JM, Wilks AR (1988) The New S Language. Chapman & Hall, London, pp 1-702

Crawley MJ (2007) The R book. John Wiley & Sons, Chichester, pp 1-942

Janoušek V, Moyen JF, Martin H, Erban V, Farrow C (2016) Geochemical Modelling of Igneous Processes - Principles and Recipes in R Language. Bringing the Power of R to a Geochemical Community. Springer-Verlag, Berlin, Heidelberg, pp 1-346

Langtangen, H P (2016) A Primer On Scientific Programming With Python, Texts in Computational Science and Engineering, pp 1-992

Maindonald J, Braun J (2003) Data Analysis and Graphics Using R. Cambridge University Press, Cambridge, pp 1-386

Murrell P (2005) R Graphics. Chapman & Hall/CRC, London, pp 1-328

Rollinson HR (1993) Using Geochemical Data: Evaluation, Presentation, Interpretation. Longman, London, pp 1-352

Rossant C (2015) Learning IPython for Interactive Computing and Data Visualization - Second Edition, Packt Publishing, pp 1-175

Požadavky ke zkoušce -
Poslední úprava: doc. RNDr. Petr Jeřábek, Ph.D. (14.03.2019)

Zkouška probíhá formou praktického testu, kdy frekventanti programují několik dílčích úloh paralelně v jazycích R a Python.

Sylabus -
Poslední úprava: prof. Mgr. Vojtěch Janoušek, Ph.D. (04.03.2019)

1.  Úvod do problematiky zpracování dat a algoritmizace I. [OL]

  • Problém zpracování rozsáhlých datových souborů v přírodních vědách
  • Proč právě Python – trocha historie a aktuální rozmach
  • Instalace software nezbytného pro zbytek kurzu

2. Úvod do problematiky zpracování dat a algoritmizace II. [VJ]

  • Proč právě  R – trocha historie a aktuální rozmach
  • Jak funguje počítačový program?
  • Základní datové typy, algoritmizace, typické části počítačového programu, princip objektového programování

3.  Základy programovacího jazyka Python I. [OL]

Úvod do interaktivního prostředí Jupyter Notebook

Úvod do Pythonu, základní vlastnosti a nástroje, konvence

  • Datové typy a jejich vlastnosti, kontejnery a (im)mutable typy, iterátory, generátory
  • Deklarace proměnné
  • Built-in funkce a operátory
  • Bloky a cykly
  • Vytváření funkcí
  • Výjimky a chyby

4.  Základy programovacího jazyka Python II. [OL]

Rozšíření Python-u

  • Úvod do NumPy – Numerický Python
  • Základní grafický výstup – Matplotlib
  • Tvorba map – Basemap
  • Pokročilá práce s NumPy a SciPy
  • Načítání a ukládání dat v Pythonu

5. Základy programovacího jazyka R I. [VJ]

Úvod, hlavní datové struktury a práce s nimi

  • Práce v interaktivním a dávkovém režimu
  • Dostupná dokumentace a help
  • Hlavní datové typy, atributy
  • Vektory
  • Matice  a vícerozměrné matice (arrays)
  • Faktory
  • Seznamy (lists)

6. Základy programovacího jazyka R II. [VJ]

Vývoj programů a grafika

  • Import dat a výstup dat do souborů
  • Grafické funkce a hlavní grafické parametry
  • Tisk a export (PDF, PostScript…)
  • Programování v R – podmíněné příkazy, příkazy cyklu, uživatelské funkce
  • R komunita, CRAN, mailing listy, useR! konference
  • rozšíření pomocí knihoven (balíčky – packages)

7. Aplikace programovacího jazyka Python I. [OL]

Výpočty a statistika

  • Základní statistika v Python-u
  • Analýza dat v prostředí Python – Pandas

8.  Aplikace programovacího jazyka Python II. [OL]

Orientační analýza- zpracování směrových dat

  • Statistika vektorových dat – průměrný vektor v ploše a na kouli
  • Statistika osních dat – matice orientace a výpočet průměrného směru orientace

9.  Aplikace programovacího jazyka R I. [VJ]

Výpočty a statistika

  • Jednoduché geochemické přepočty
  • O užitečnosti matic
  • Základní statistika v R
  • Zpracování velkých datových souborů

10. Aplikace programovacího jazyka R II. [VJ]

  • Grafika v R – příklady z horninové geochemie
  • Binární a Harkerovy diagramy
  • Ternární diagramy
  • Spiderdiagramy
  • Výpočet jednoduchých petrogenetických modelů a jejich grafické zobrazení)
 
Univerzita Karlova | Informační systém UK