Vodstvo želi povečati produktivnost zaposlenih z izboljšanjem njihovih veščin kvantitativne analize podatkov. Oddelek za usposabljanje zaposlenih je našel agencijo, ki ponuja tri različne tečaje, ki bi lahko izboljšali veščine zaposlenih. Ker podjetje ni vedelo, kateri tečaj bi bil najboljši za njegove zaposlene, je poslalo 10 zaposlenih na tečaj A, 10 zaposlenih na tečaj B in 10 zaposlenih na tečaj C. Ko so se zaposleni vrnili s tečaja, so vsi dobili isti projekt za delo v programu R.

enota: ZAPOSLEN velikost vzorca: 30 spr: ČAS porabljen za reševanje problema, VRSTA TEČAJA (a, b, c)- faktorska spremenljivka

ONE-WAY ANOVA - ENOFAKTORSKA ANALIZA VARIANCE H0: povp. A = povp B = povp C H1: Vsaj ena je drugačna

PREDPOSTAVKE: - št spremenljivka - čas se v vsaki skupini porazdeljuje normalno (grafično ali Shapiro-wilkov prizkus) - homoskedastičnot (daso variance spr. časa enake v vseh skupinah)- preverjamo z LEVENOVIM preizkusom

library(readxl)
podatki <- read_xlsx("./Spretnosti.xlsx")
podatki <- as.data.frame(podatki)
head(podatki)
##   ID Cas Tecaj
## 1  1  59     A
## 2  2  50     A
## 3  3  45     A
## 4  4  55     A
## 5  5  35     A
## 6  6  28     A

Opis:

podatki$TecajF <- factor(podatki$Tecaj, 
                         levels = c("A", "B", "C"), 
                         labels = c("A", "B", "C"))
library(psych)
## 
## Attaching package: 'psych'
## The following object is masked from 'package:onewaytests':
## 
##     describe
## The following objects are masked from 'package:ggplot2':
## 
##     %+%, alpha
## The following object is masked from 'package:car':
## 
##     logit
describeBy(podatki$Cas, podatki$TecajF)
## 
##  Descriptive statistics by group 
## group: A
##    vars  n mean    sd median trimmed   mad min max range skew
## X1    1 10 41.5 10.56   39.5      41 11.86  28  59    31  0.3
##    kurtosis   se
## X1    -1.45 3.34
## ---------------------------------------------------- 
## group: B
##    vars  n mean    sd median trimmed  mad min max range  skew
## X1    1 10   37 10.37   40.5   37.75 5.93  18  50    32 -0.66
##    kurtosis   se
## X1     -1.1 3.28
## ---------------------------------------------------- 
## group: C
##    vars  n mean   sd median trimmed   mad min max range skew kurtosis
## X1    1 10 26.8 8.84     24   26.75 11.12  15  39    24 0.14    -1.84
##     se
## X1 2.8

primerjamo povprečja in najbolj učinkovit tečaj je C, ker porabijo najmanj minut.

library(car)
leveneTest(podatki$Cas, podatki$TecajF) 
## Levene's Test for Homogeneity of Variance (center = median)
##       Df F value Pr(>F)
## group  2  0.0643 0.9378
##       27

Homoskedastičnost velja, ker je p > 0,05.

library(dplyr)
## 
## Attaching package: 'dplyr'
## The following object is masked from 'package:car':
## 
##     recode
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(rstatix)
## Warning: package 'rstatix' was built under R version 4.4.2
## 
## Attaching package: 'rstatix'
## The following object is masked from 'package:stats':
## 
##     filter
podatki %>%
  group_by(TecajF) %>%
  shapiro_test(Cas) #"Shapiro-wilkov preizkus"
## # A tibble: 3 × 4
##   TecajF variable statistic     p
##   <fct>  <chr>        <dbl> <dbl>
## 1 A      Cas          0.946 0.618
## 2 B      Cas          0.896 0.200
## 3 C      Cas          0.889 0.166

normalnost velja ker je p > 0.05

results <- aov(Cas ~ TecajF,   #analiza variance
               data = podatki)

summary(results)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## TecajF       2   1135   567.3   5.724 0.00847 **
## Residuals   27   2676    99.1                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

1135 = vsota kvadratov med skupinami (med različnimi tečaji) 2676 = vsota kvadraov znotraj skupin

H0 zavrnemo ker je p>0,001 in ugotavljam da se vsaj en povprečen čas razlikuje od drugih.

library(effectsize)
## 
## Attaching package: 'effectsize'
## The following objects are masked from 'package:rstatix':
## 
##     cohens_d, eta_squared
## The following object is masked from 'package:psych':
## 
##     phi
eta_squared(results)
## For one-way between subjects designs, partial eta squared is
##   equivalent to eta squared. Returning eta squared.
## # Effect Size for ANOVA
## 
## Parameter | Eta2 |       95% CI
## -------------------------------
## TecajF    | 0.30 | [0.06, 1.00]
## 
## - One-sided CIs: upper bound fixed at [1.00].
interpret_eta_squared(0.30, rules = "cohen1992")
## [1] "large"
## (Rules: cohen1992)

interpret_eta_squared(0.30,rules = “chen1992”) = 0.2977406 to dobimo z 1135/1135+2676

pairwise.t.test(podatki$Cas, g = podatki$TecajF,
                paired = FALSE,
                p.adj = "bonferroni")
## 
##  Pairwise comparisons using t tests with pooled SD 
## 
## data:  podatki$Cas and podatki$TecajF 
## 
##   A      B     
## B 0.9634 -     
## C 0.0081 0.0900
## 
## P value adjustment method: bonferroni

te tri številke so p vrednosti 0,0081 je p vr.za tečaj A in C - ugotovimo, da so razlike samo pri teh dveh (razlog je mali vzorec) Med A in B ter C in B ugotovimo , da ni razlik

kruskal.test(Cas ~ TecajF, 
             data = podatki)
## 
##  Kruskal-Wallis rank sum test
## 
## data:  Cas by TecajF
## Kruskal-Wallis chi-squared = 8.2699, df = 2, p-value = 0.016

H0: Lokacije porazdelitev sprmenljivke čas so enake pri vseh tačajih H1: Vsaj ena lokacije porazdelitve je drugačna.

Zavrnemo H0 pri p.vr < 0,016

kruskal_effsize(Cas ~ TecajF, 
                data = podatki)
## # A tibble: 1 × 5
##   .y.       n effsize method  magnitude
## * <chr> <int>   <dbl> <chr>   <ord>    
## 1 Cas      30   0.232 eta2[H] large

razlike so velike

library(rstatix)

groups_nonpar <- wilcox_test(Cas ~ TecajF,   # WILCOXonov PREIZKUS VSOT RANGOV
                             paired = FALSE,
                             p.adjust.method = "bonferroni",
                             data = podatki)

groups_nonpar
## # A tibble: 3 × 9
##   .y.   group1 group2    n1    n2 statistic     p p.adj p.adj.signif
## * <chr> <chr>  <chr>  <int> <int>     <dbl> <dbl> <dbl> <chr>       
## 1 Cas   A      B         10    10      56.5 0.65  1     ns          
## 2 Cas   A      C         10    10      84.5 0.01  0.03  *           
## 3 Cas   B      C         10    10      80   0.026 0.077 ns

tudi tu odkrijemo razlike samo med A in C.