Tutoriál R/Datové tabulky

Z WikiSkript

Datová tabulka (data.frame) je dvojrozměrným polem, které obsahuje v každém sloupci prvky stejného datového typu, ale jednotlivé sloupce se mohou datovým typem lišit. Např.

 mtcars # vestavěná tabulka s informacemi o automobilech


Získání informací o datové tabulce

str(mtcars) # přehledné zobrazení informací o objektu
class(mtcars) # "data.frame"
is.data.frame(mtcars) # TRUE
dim(mtcars) # c(32, 11)
head(mtcars) # začátek datové tabulky (pro získání orientace)
tail(mtcars) # konec datové tabulky


Vytvoření datové tabulky obsahující informace o planetách sluneční soustavy

nazev <- c("Merkur", "Venuše", "Země", "Mars", "Jupiter", "Saturn", "Uran", "Neptun")
typ <- c("Planeta zemského typu", "Planeta zemského typu", "Planeta zemského typu", "Planeta zemského typu", "Plynný obr", "Plynný obr", "Plynný obr", "Plynný obr")
polomer <- c(0.382, 0.949, 1, 0.532, 11.209, 9.449, 4.007, 3.883) # v násobcích poloměru Země
prstenec <- c(FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE)

planety <- data.frame(nazev, typ, polomer, prstenec)
str(planety)


Výběr dat v tabulce

# Poloměr Merkuru (řádek 1, sloupec 3)
planety[1, 3]

# Kompletní data o Venuši (celý 2. řádek)
planety[2, ]

# První 4 hodnoty ze sloupce "polomer"
planety[1:5, "polomer"]

# Výběr planet s prstenci
planety_prstenec <- planety$prstenec # vektor prstenců (FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE)
planety[planety_prstenec, ] # tabulka obsahující info pouze o planetách s prstenci

# Nebo totéž kratším zápisem
subset(planety, subset = prstenec > FALSE)


Seřazení tabulky (dataframu)

# Seřazení podle poloměru
pozice <- order(planety$polomer)
planety[pozice, ]