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.
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
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
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)
## # 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
results <- aov(Cas ~ TecajF,
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
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)
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
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
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
library(rstatix)
groups_nonpar <- wilcox_test(Cas ~ TecajF,
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