Kolik váží „typický“ savec?

Humorná ilustrace slona na váze, netopýra zapisujícího údaje a spícího geparda; trojice ukazuje velkou rozmanitost savců.

Logo kurzu Biostatistika BIOSTATISTIKA

L01

Úvod do biostatistiky

Ondřej Mottl

Portrét vyučujícího Ondřeje Mottla v terénu.


🌿 Vegetační ekolog na katedře botaniky

🧑‍💻 vedoucí Laboratoře kvantitativní ekologie

♻️ zastánce otevřené a reprodukovatelné vědy


Jak z velkého množství biologických dat “vyždímat” nové informace

Co mě zajímá?


Biodiverzita

napříč měřítky

Ilustrace biodiverzity od jednotlivého organismu přes vegetační plochu po krajinu.

Velká data

nové metody

Ilustrace ekologických pozorování, která vstupují do statistické analýzy.

Otevřená věda

reprodukovatelnost

Ilustrace otevřeného a opakovatelného výzkumného postupu od terénu přes analýzu ke sdílenému výsledku.

Co se od vás očekává?

Příprava → společné přemýšlení → vlastní práce s daty


Před výukou

Krátce projdete materiály (skripta).

90 minut přednášky

Aktivní účast na přednášce.

120 minut praktika

V jedné z pěti paralelních skupin budete analyzovat data v R.

Materiály najdete na webu kurzu (HUB)


Skripta

HTML pro interaktivní čtení
PDF pro tisk

Prezentace

HTML pro prohlížení v prohlížeči
PDF pro tisk

R skripty

Kód pro praktickou práci s daty v R.

Výuka je dobrovolná, kompetence povinné

Na přednášky a praktika chodit nemusíte.


Ve výuce

Získáte vysvětlení, podporu a zpětnou vazbu.

Při samostudiu

Všechny požadované znalosti najdete ve skriptech a cvičeních v R.

Povinně

Absolvujete praktický zápočet a závěrečnou zkoušku.


Učit se můžete prezenčně i doma — stejné kompetence však musí prokázat každý.

Zápočet a zkouška ověřují jiné dovednosti


Praktický zápočet

Dokážete samostatně provést a vysvětlit základní analýzu v R?

  • malý dataset a biologická otázka
  • částečně připravený R skript
  • kontrola dat, graf, model a biologický závěr

Závěrečná zkouška

Rozumíte analytickým rozhodnutím a interpretaci výsledků?

  • dodaný R kód, grafy a modelové výstupy
  • interpretace, diagnostika a nejistota
  • ne psaní syntaxe zpaměti


AI můžete používat při učení.
U zápočtu a zkoušky pracujete samostatně bez internetu a AI.

Tři rychlé otázky na rozjezd

Odpovězte samostatně na tři krátké otázky. Na telefonu neuvidíte odpovědi ostatních; společné výsledky otevřeme až po hlasování.

QR kód otevírající anonymní dotazník PollsLive se třemi otázkami.

Otevřít dotazník v novém okně

Jak odpovídala skupina?

Co se v tomto kurzu pokusíme z
biologických dat „vyždímat“?

  • Co nejvíce tabulek
  • Nové informace
  • Správnou odpověď za každou cenu

Správná odpověď: Nové informace

Cílem je získávat z biologických dat nové informace a umět přitom vysvětlit, jak jsme k závěru došli.

Kdy můžete v tomto kurzu používat AI?

  • Nikdy
  • Při učení a přípravě, ale ne u zápočtu a zkoušky
  • Také u zápočtu a zkoušky, pokud použití AI uvedete

Správná odpověď: Při učení a přípravě, ale ne u zápočtu a zkoušky

AI můžete používat při učení. U praktického zápočtu a závěrečné zkoušky pracujete samostatně bez internetu a AI.

Kde najdete veřejné materiály ke každé lekci?

  • Na webu kurzu (HUB)
  • V Moodle
  • V SIS

Správná odpověď: Na webu kurzu (HUB)

Veřejné materiály jsou na webu kurzu (HUB). Moodle slouží pro testy, odevzdávání, výsledky a neveřejná oznámení; SIS pro zápis a termíny zkoušek.

Kolik váží běžný savec?

Tabulka savců


druh typ_potravy rad spanek_h hmotnost_kg
Cheetah masožravec Carnivora 12.1 50.00
Owl monkey všežravec Primates 17.0 0.48
Mountain beaver býložravec Rodentia 14.4 1.35

Ukázka z tabulky msleep (celkem 83 řádků).




Smyšlený titulek A

Vědci spočítali:
„Průměrný savec váží 166 kg.“

Smyšlený titulek B

Jiná analýza tvrdí:
„Běžný savec váží jen 1,67 kg.“


Stejná tabulka. Dvě dramaticky odlišná čísla.

Výsledky učení


Po dnešní přednášce budete schopni:

  • vysvětlit, co v tabulce představuje jeden řádek
  • přečíst vhodný graf jedné proměnné
  • vybrat smysluplnou dvojici středu a rozptýlení
  • rozlišit čtyři typy proměnných a zvolit jejich první popis
  • vysvětlit, proč jedno správně vypočtené číslo ještě nemusí být dobrý titulek

Jak budeme pracovat?

Otázka → data → graf → souhrn → (opatrná interpretace)


Na přednášce

Budete odhadovat, hlasovat, porovnávat grafy a obhajovat závěry.

V materiálech

HTML nabízí záložky a rozbalovací otázky; PDF je vhodné pro souvislé čtení.

Titulek A

„Průměrný savec váží 166 kg.“

Titulek B

„Běžný savec váží 1,67 kg.“

Hlasování: který titulek je správný?

A) Pouze titulek A.

B) Pouze titulek B.

C) Oba mohou být správně.

D) Zatím nemáme dost informací.

Hlasujte samostatně a svou volbu pak obhajte sousedovi.

Přesvědčte souseda


Proč jste vybrali právě svoji možnost?


Důkaz, který máte k dispozici

  • stejná tabulka savců;
  • 166 kg versus 1,67 kg

Odpověď zatím odložíme

Zjistíme, co bylo změřeno a jak hodnoty vypadají.



Správný výpočet ještě nezaručuje správnou interpretaci.

Od organismu k datům

Začneme jedním savcem

Stejná tabulka obsahuje hmotnost i spánek. Na době spánku si ukážeme, jak data zobrazit a popsat. K otázce o hmotnosti se vrátíme s těmito nástroji.

Gepard (Cheetah)


Výzkumníci studovali spánkové návyky savců a u geparda zaznamenali 12.1 hodiny spánku za den.


Při záznamu měření

Výsledek pro jeden zastoupený druh zapíšeme do jednoho řádku tabulky.


Humorná ilustrace geparda spícího v pyžamu.

Ilustrace vytvořená pomocí AI.

První pozorování přidá první řádek



Druh (species) Spánek za den (h)
Cheetah 12.1


Jeden řádek zachovává spojení mezi druhem a jeho hodnotou.

Další druh přidá další řádek



Druh (species) Spánek za den (h)
Cheetah 12.1
Owl monkey 17.0


Tabulka roste po řádcích: jeden zastoupený druh po druhém.

Čtyři druhy, čtyři řádky


Druh (species) Spánek za den (h)
Cheetah 12.1
Owl monkey 17.0
Mountain beaver 14.4
Greater short-tailed shrew 14.9


Na co přesně se vztahuje hodnota 12,1 hodiny v prvním řádku?

Co představuje jeden řádek?

A

Jednoho konkrétního geparda.

B

Jeden zastoupený druh savce.

C

Jednu hodinu měření.

Jeden řádek = jeden zastoupený druh

Co víme

Každá hodnota spánku patří jednomu druhu, který je v tabulce zastoupen.

Co z toho neplyne

Tabulka neobsahuje data o spánku všech jednotlivých savců na Zemi.

Jak uložíme jednu hodnotu v R?

vec_spanek_ukazka <-
  c(
    12.1 # Cheetah
  )

vec_spanek_ukazka
[1] 12.1


Vektor (vector)

Vektor je uspořádaná řada hodnot stejného typu.

Druhý řádek přidá druhou hodnotu

vec_spanek_ukazka <-
  c(
    12.1, # Cheetah
    17.0  # Owl monkey
  )

vec_spanek_ukazka
[1] 12.1 17.0


Co znamená pořadí?

První hodnota vektoru patří prvnímu řádku tabulky, druhá druhému řádku.

Stejné čtyři hodnoty zapíšeme do vektoru


vec_spanek_ukazka <-
  c(
    12.1, # Cheetah
    17.0, # Owl monkey
    14.4, # Mountain beaver
    14.9  # Greater short-tailed shrew
  )

Tabulka uchovává i jména druhů. Samotný vektor uchovává jen hodnoty a jejich pořadí.

Základní operace

length(
  x = vec_spanek_ukazka
)
[1] 4

length() říká, kolik hodnot máme.

head(
  x = vec_spanek_ukazka,
  n = 2
)
[1] 12.1 17.0

head() ukáže první hodnoty (2 hodnoty v našem případě).

Celá tabulka přidává další proměnné

Dataset msleep

  • 83 řádků: zastoupené druhy savců;
  • 5 sloupců: například spánek, hmotnost, potrava nebo taxonomický řád;
druh typ_potravy rad spanek_h hmotnost_kg
Cheetah masožravec Carnivora 12.1 50.00
Owl monkey všežravec Primates 17.0 0.48
Mountain beaver býložravec Rodentia 14.4 1.35

Než popisujeme čísla, vždy si ujasníme jednotku pozorování, význam proměnné a jednotky měření.

Od tabulky ke grafu

Data přibývají druh po druhu

Graf nevzniká místo dat. Vzniká postupným zobrazením hodnot, které jsme vložili do tabulky a vektoru. Svislá poloha teček jen brání překryvu; osa y zde neznamená další měření.

Jak vypadá spánek všech zastoupených druhů?

Kde leží nejkratší a nejdelší doba spánku? Kde se body hromadí?

Stejná data, seskupená do intervalů

Histogram ukazuje počty v intervalech, ale skrývá přesné hodnoty jednotlivých druhů.

Stejná data, ale jako hladký tvar

Graf hustoty vyhlazuje naměřené hodnoty do souvislé křivky. Výška ukazuje hustotu, nikoli počet druhů; jednotlivé hodnoty v něm nevidíme.

Který graf byste použili?

Potřebujete zjistit, zda některý druh spí téměř 20 hodin denně.


A

Bodový graf

B

Histogram

C

Graf hustoty


Když nehlasujeme: napište si, který graf zachovává jednotlivé hodnoty a proč je to pro tuto otázku důležité.

Tři grafy, tři různé otázky

Graf Nejlépe ukáže Co skrývá
Bodový graf jednotlivé hodnoty (při velkém počtu může být přeplněný)
Histogram počty v intervalech přesné hodnoty
Graf hustoty hladký tvar počty a konkrétní druhy


Graf vybíráme podle otázky.

Deskriptivní statistiky

Devět druhů, devět dob spánku

Kam byste umístili jeden bod, který má zastoupit všech devět hodnot?

Minimum (minimum): nejmenší pozorovaná hodnota


vec_spanek_9 <- c(
  2.9, 3.8, 4, 8, 8.4,
  9.1, 9.7, 10.1, 12.5
)

min(
  x = vec_spanek_9
)
[1] 2.9

Minimum je zde 2.9 h.

Maximum (maximum): největší pozorovaná hodnota


max(
  x = vec_spanek_9
)
[1] 12.5

Maximum je zde 12.5 h.

Minimum a maximum ukazují krajní pozorované hodnoty. Když přidáme další druhy, mohou se posunout dál; silně závisejí na velikosti souboru a neříkají, kde leží většina dat.

Průměr: hodnoty sečteme a rozdělíme

mean(
  x = vec_spanek_9
)
[1] 7.611111

Průměr je zde 7,61 h.

Aritmetický průměr (mean) používá každou hodnotu a může být citlivý na hodnoty daleko od ostatních.

Seřadíme hodnoty a hledáme prostřední

Medián = 8,4 h

median(
  x = vec_spanek_9
)
[1] 8.4

Čtyři hodnoty leží níže a čtyři výše.

Medián (median) je prostřední hodnota seřazeného souboru.

Kvartily rozdělí seřazené hodnoty na čtvrtiny


quantile(
  x = vec_spanek_9,
  probs = c(0.25, 0.75)
)
25% 75% 
4.0 9.7 

Q1 odděluje dolní čtvrtinu, Q3 horní čtvrtinu hodnot.

Kvartily (quartiles) Q1 a Q3 určují hranice prostředních 50 % seřazených hodnot.

IQR je šířka prostřední poloviny


IQR(
  x = vec_spanek_9
)
[1] 5.7

IQR (interquartile range) = Q3 − Q1. Popisuje rozptýlení prostřední poloviny hodnot.

Oba soubory mají průměr 10 hodin — jsou stejné?

Odchylka od průměru

Odchylka (deviation)

odchylka doby spánku =

doba spánku druhu −

průměrná doba spánku

Fialová vede pod průměr, oranžová nad něj.

Délka barevného úseku ukazuje, jak daleko je každá hodnota od aritmetického průměru.

Odchylka u kočky

Hodnoty z horního řádku

Kočka domácí: 12,5 h

Aritmetický průměr: 7,61 h

Dosazení

12,5 h − 7,61 h =

4,89 h

Kladný výsledek říká, že kočka domácí spí déle než průměr devíti druhů.

Odchylky se navzájem vyruší

Součet odchylek

součet odchylek =

kladné odchylky + záporné odchylky

= 0,00 h

Kolem průměru se navzájem vyváží.

Když prostý součet vždy vyjde přibližně nula, jak zachováme velikost vzdáleností?

Odchylky umocníme na druhou

Čtverec odchylky

čtverec odchylky = odchylka²

Všechny příspěvky jsou nezáporné.

(12,5 − 7,61)² =

4,89² =

23,90 h²

Nejvíce zde přispívá kočka domácí, protože leží nejdále od průměru.

Stejný krok rozepíšeme pro všech devět druhů

Všechny hodnoty jsou převzaté z grafu

(2,9 − 7,61)² + (3,8 − 7,61)² + (4,0 − 7,61)² +

(8,0 − 7,61)² + (8,4 − 7,61)² + (9,1 − 7,61)² +

(9,7 − 7,61)² + (10,1 − 7,61)² + (12,5 − 7,61)²

= 87,21 h²

Součet devíti čtverců odchylek shrnuje jejich celkovou velikost do jednoho čísla.

Výběrový rozptyl


Výpočet slovy

výběrový rozptyl (sample variance) =

součet čtvercových odchylek dělený

počtem hodnot zmenšeným o jednu

Dosazení hodnot

87,21 h² / (9 − 1) =

87,21 h² / 8 = 10,90 h²

Jednotkou rozptylu jsou hodiny na druhou. Proto se rozptyl hůře interpretuje přímo.

Vzorec shrnuje stejný výpočet

Obecný vzorec

s² = Σ(xᵢ − x̄)² / (n − 1)

var(
  x = vec_spanek_9
)
[1] 10.90111

Co znamenají symboly?

  • s² — výběrový rozptyl;
  • xᵢ — doba spánku jednoho druhu;
  • x̄ — aritmetický průměr;
  • n — počet hodnot;
  • Σ — sečteme příspěvky všech druhů.


Vzorec zapisuje stejný výpočet pro libovolný počet hodnot.

Směrodatná odchylka

Vztah k rozptylu

směrodatná odchylka =

druhá odmocnina z rozptylu

Dosazení hodnot

√10,90 h² = 3,30 h

Vzorec

s = √s²

s je směrodatná odchylka a s² výběrový rozptyl.

V R stejný krok provede sd(x = vec_spanek_9). SD (standard deviation) je zpět v původních jednotkách.

Stejná průměrná mzda, jiné SD

V obou firmách je průměr 50 tisíc Kč. Vyšší SD ve firmě B (12 tisíc Kč oproti 3 tisícům Kč) znamená širší histogram.

Které souhrny patří k sobě?

Vyberte dvojici, která popisuje střed a rozptýlení podobným způsobem.


A

průměr + IQR

B

průměr + SD

C

medián + SD



Dvě užitečné dvojice

Průměr + SD

Používají všechny hodnoty a jsou citlivější k hodnotám daleko od středu.

Medián + IQR

Vycházejí z pořadí hodnot a jsou odolnější vůči vzdáleným hodnotám.


Volbu neurčuje zvyk. Rozhoduje tvar dat a otázka, kterou souhrnem zodpovídáme.

Zpět k titulku

Malý netopýr a velký slon jsou v jedné tabulce

Co znamená „běžná“ hmotnost?


Biologická otázka

Má jedno číslo zastoupit druhy od velmi malých savců až po slony?


Volbu souhrnu opřeme o tvar dat v grafu.

Humorná ilustrace slona stojícího na malé osobní váze.

Ilustrace vytvořená pomocí AI.

Vracíme se k tělesné hmotnosti

Tělesná hmotnost druhu (kg), lineární osa

Několik velmi těžkých druhů roztáhne osu tak silně, že většina bodů splývá u nuly.

Stejná data na logaritmické ose

Tělesná hmotnost (kg), logaritmická osa

Graf nezměnil data. Jen nám dovolil vidět lehké i těžké druhy současně. Plná fialová čára je medián, přerušovaná tmavá čára průměr.

Co znamená logaritmická osa?

Stejná vzdálenost na ose znamená stejný násobek.

Úsek od 1 do 10 kg je stejně dlouhý jako úsek od 10 do 100 kg. Nulu ani zápornou hodnotu na logaritmické ose zobrazit nelze.

Jak dvě redakce počítaly?

Titulek A · průměr

„Průměrný savec váží 166 kg.“

A) Pouze A.

C) Oba mohou být správně.

Titulek B · medián

„Běžný savec váží jen 1,67 kg.“

B) Pouze B.

D) Nemáme dost informací.


Obě čísla jsou správně vypočtená. Ani jedno však není univerzální „typický savec“.

Statistická redakce: opravte titulek

Důkazy

  • řádek představuje zastoupený druh
  • rozdělení hmotnosti je ovlivněno několika velmi těžkými druhy;
  • průměr = 166 kg, medián = 1,67 kg.


Přepište jeden titulek tak, aby byl pravdivý i po přečtení grafu.


Co z tabulky smíme tvrdit?

Poctivý závěr

V této tabulce je medián hmotnosti zastoupeného druhu 1,67 kg, ale několik velmi těžkých druhů posouvá průměr na 166 kg.

Pozor!

Tabulka není náhodným výběrem všech druhů ani všech jednotlivých savců. Čísla proto nepopisují „náhodného savce na Zemi“.

Statistiky jako vizualizace

Správný titulek můžeme doplnit grafem

„Běžný zastoupený druh váží 1,67 kg.“ Graf ukazuje data i medián za tímto titulkem.

Přidáme prostřední polovinu

Šířka krabice je IQR: prostředních 50 % hodnot.

Přidáme vousy

Vous končí u nejkrajnější pozorované hodnoty nejvýše 1,5 × IQR od okraje krabice. Body dál od krabice vyznačíme zvlášť; nejsou automaticky chybou. Pravidlo počítáme v původních kilogramech.

Body za vousy mohou být zajímavé nebo neobvyklé, ale nejsou automaticky chybné.

Z bodů vznikl krabicový graf

Krabicový graf (boxplot) je mapa několika souhrnů, ne fotografie všech hodnot.

Co krabice schovala?

Krabicový graf

Krabicový + houslový graf

přerušovaná tmavá čára = průměr
plná čára v krabici = medián

Houslový graf vrací tvar

Krabicový graf

Rychle porovná medián, IQR, vousy a možné odlehlé hodnoty.

Houslový graf

Ukáže, kde se hodnoty hromadí, ale přesná četnost se z jeho šířky čte obtížně.

Housle mohou být informativnější, když je důležitý tvar; body zůstávají nejtransparentnější první kontrolou.

Typy proměnných

Jeden netopýr, různé typy údajů

U netopýra můžeme zaznamenat:

  • dobu spánku v hodinách;
  • váhu v kilogramech;
  • počet pozorovaných jedinců;
  • druh;
  • typ potravy;
  • velikostní kategorii.

Typ neurčuje vzhled čísla. Určuje jej význam proměnné.

Humorná ilustrace netopýra zapisujícího údaje do terénního formuláře.

Ilustrace vytvořená pomocí AI.

Číslo 37 může znamenat čtyři různé věci

Zápis Co znamená Jak vznikl
37,0 tělesná teplota měření
37 počet mláďat počítání
37 číselný kód lokality název kategorie
3 stupeň poškození uspořádaná kategorie


Rozhoduje vzhled hodnoty, nebo její význam?

Typ určuje význam a možné operace

  • spojitá numerická: měření na číselné škále;
  • diskrétní numerická: výsledek počítání;
  • nominální kategoriální: názvy bez přirozeného pořadí;
  • ordinální kategoriální: kategorie s přirozeným pořadím.


Technická třída objektu v R pomáhá s kontrolou, ale statistický typ určuje význam hodnot a způsob jejich vzniku.

Doba spánku vznikla měřením

Spojitá numerická proměnná: mezi dvěma hodnotami mohou být další měření.

vec_spanek_h <-
  ggplot2::msleep[["sleep_total"]]

class(x = vec_spanek_h)
[1] "numeric"
typeof(x = vec_spanek_h)
[1] "double"

Počet druhů v řádu jsme spočítali

Diskrétní numerická proměnná: vznikla počítáním; může nabývat pouze celočíselných hodnot (např. 1, 5, 10).

vec_pocet_druhu <-
  as.integer(
    x = table(
      ggplot2::msleep[["order"]]
    )
  )

class(x = vec_pocet_druhu)
[1] "integer"
str(object = vec_pocet_druhu)
 int [1:19] 1 6 12 3 2 2 2 2 2 3 ...

Typ potravy je název bez pořadí

Nominální kategoriální proměnná: smysl dávají četnosti a podíly, ne průměr.

vec_typ_potravy <-
  ggplot2::msleep[["vore"]]

vec_chybi <-
  is.na(vec_typ_potravy)

vec_typ_potravy[vec_chybi] <-
  "neuvedeno"

vec_typ_potravy <-
  factor(x = vec_typ_potravy)

class(x = vec_typ_potravy)
[1] "factor"
str(object = vec_typ_potravy)
 Factor w/ 5 levels "carni","herbi",..: 1 5 2 5 2 2 1 4 1 2 ...

Velikostní kategorie: lehký–střední–těžký

Ordinální kategoriální proměnná: pořadí je součástí objektu: lehký < střední < těžký.

poradi <-
  c("lehký", "střední", "těžký")

vec_velikost <-
  ordered(
    x = poradi,
    levels = poradi
  )

class(x = vec_velikost)
[1] "ordered" "factor" 
str(object = vec_velikost)
 Ord.factor w/ 3 levels "lehký"<"střední"<..: 1 2 3

Určete typ proměnné

Možnosti

spojitá numerická · diskrétní numerická · nominální kategoriální · ordinální kategoriální

Proměnná Jak vznikla?
pH vody v rybníce měřením
počet mláďat ve vrhu počítáním
druh stanoviště názvem kategorie
stupeň poškození listu uspořádanou kategorií

Přiřaďte ke každé proměnné jeden ze čtyř typů.

Od typu proměnné k prvnímu popisu

Typ proměnné Vhodný první souhrn Vhodný první graf
numerická spojitá medián + IQR nebo průměr + SD body, histogram, hustota, boxplot
numerická diskrétní četnosti; někdy medián/průměr body nebo sloupce počtů
kategoriální nominální četnosti a podíly sloupcový graf
kategoriální ordinální četnosti; někdy medián pořadí uspořádaný sloupcový graf

Typ proměnné zužuje, které grafy, souhrny a později i modely dávají smysl.

Závěr

Shrnutí

  • Každý řádek spojíme s jeho skutečnou jednotkou pozorování.
  • Data zhodnotíme graficky před výběrem souhrnného čísla.
  • Průměr + SD; medián + IQR.
  • Význam proměnné určuje její typ. Podle toho vybereme vhodný graf a vhodný souhrn.

Co potřebujete vědět, než řeknete „typický“?

Jaké tři otázky položíte člověku, který vám ukáže jedno souhrnné číslo bez grafu?


V následující lekci přidáme druhou proměnnou a zeptáme se, zda spolu dvě měření souvisejí.