Chi-square test

Analýza dat z průzkumů v Pythonu

EbunOluwa Andrew

Data Scientist

Chi-square test

  • Inference o rozdělení kategorické proměnné
    • Porovnává pozorované hodnoty s očekávanými

Fotografie kostek od Edge2Edge Media na Unsplash

Analýza dat z průzkumů v Pythonu

Chi-square test v analýze průzkumů

  • Určení vztahu mezi dvěma kategorickými proměnnými populace
  • $H_{o}$ = žádný vztah mezi proměnnými
  • $H_{a}$ = vztah mezi proměnnými
  • P-hodnota
    • pokud je signifikantní (<0,05), zamítáme nulovou hypotézu
    • pokud není signifikantní (>0,05), přijímáme nulovou hypotézu
Analýza dat z průzkumů v Pythonu

Proč používat chi-square test v analýze průzkumů

  • Vstupní proměnné relevantní pro výstupní proměnnou

  • Porozumění vlivu různých proměnných na populaci

  • Ověření, zda jsou rozdíly náhodné nebo statisticky významné

Fotografie výsledků průzkumu od Firmbee.com na Unsplash

1 Photo by Firmbee.com on Unsplash
Analýza dat z průzkumů v Pythonu

Předpoklady chi-square testu v analýze průzkumů

  • Obě proměnné = kategorické
  • Náhodně vybraný vzorek z populace
  • Velikost vzorku > 100
  • Očekávané frekvence >= 5
Analýza dat z průzkumů v Pythonu

Data z průzkumu pro chi-square analýzu

pet_type current_pets time_spent reduces_stress
dog 1 420 yes
dog 1 180 yes
dog 4 30 yes
dog 1 30 yes
dog 1 60 yes
Analýza dat z průzkumů v Pythonu

Data z průzkumu pro chi-square analýzu

  • Velikost vzorku >100
  • Dvě kategorické proměnné:
    • pet_type
    • reduces_stress
  • $$H_{o} $$ ŽÁDNÝ vztah mezi typem vlastněného zvířete a vnímaným snížením stresu
  • $$H_{a}$$ vztah mezi typem vlastněného zvířete a vnímaným snížením stresu
Analýza dat z průzkumů v Pythonu

Postup chi-square analýzy nad pet_survey v Pythonu

import pandas as pd
import scipy.stats as st
data = pd.read_csv('pet_survey.csv') 

cross_table = pd.crosstab(data.reduces_stress, data.pet_type)
chi_analysis = st.chi2_contingency(cross_table)
print(chi_analysis)
|--------------------------|
| (67.7,                   | 
| 1.9e-16,                 |
| 1,                       |
| array([[1767.0, 1825.0], |
| [2251.0, 2325.0]]))      |
Analýza dat z průzkumů v Pythonu

Výsledky a interpretace průzkumu pet_survey

  • Frekvence >= 5

    • Platné výsledky
  • p-hodnota < 0,05

    • zamítnutí nulové hypotézy
    • pet_owned a reduces_stress jsou ve vztahu
  • Typ zvířete ovlivňuje vnímání snížení stresu

Výsledky chi-square testu

Analýza dat z průzkumů v Pythonu

Pojďme si procvičit!

Analýza dat z průzkumů v Pythonu

Preparing Video For Download...