Bir çocuk bakımevinde barındırılan 5 yaşındaki 43 çocuğun bedensel gelişimlerinin normal seyrinde olup olmadığını saptamaya çalışan bir araştırmacı, bu yaş grubundaki çocukların boylarını ölçmüş ve R’a “boy_verisi” değişkeni olarak girmiştir. Ülkede 5 yaş grubu çocukların boylarının 98–121 cm arasında olduğu bilinmektedir. Bu noktadan hareketle, 5 yaşındaki bir çocuğun boyunun ortalama olması gerektiği varsayımına dayanarak, araştırmaya konu olan bu çocukların boy gelişimleri normal seyrinde midir?
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.2.1 ✔ readr 2.2.0
## ✔ forcats 1.0.1 ✔ stringr 1.6.0
## ✔ ggplot2 4.0.3 ✔ tibble 3.3.1
## ✔ lubridate 1.9.5 ✔ tidyr 1.3.2
## ✔ purrr 1.2.2
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(dplyr)
library(lsr)
# Veri setini oluşturalım (43 çocuk, ortalama ~108)
set.seed(123) # set.seed sonuçların her seferinde aynı çıkması için kullanılır. parantez içine yazdığınız sayı önemli değil.
boy_verisi <- data.frame(id = 1:43) %>%
mutate(boy = round(rnorm(n(), 108.5), 1))
head(boy_verisi) # ilk satırları görüntüleyelim
## id boy
## 1 1 107.9
## 2 2 108.3
## 3 3 110.1
## 4 4 108.6
## 5 5 108.6
## 6 6 110.2
id = 1:43 → 1’den 43’e kadar sayılar
üretir.
data.frame() → bu sayıları bir veri çerçevesine
dönüştürür ve 43 satırlık bir veri oluşturur.
n() → veri setindeki satır sayısını verir
(43)
rnorm(n(), 108.5) → ortalaması 108.5 olan normal
dağılımda round(…, 1) → sayıları virgülden sonra 1 basamak olacak
şekilde yuvarlar.
shapiro.test(boy_verisi$boy) # normallik testi
##
## Shapiro-Wilk normality test
##
## data: boy_verisi$boy
## W = 0.98805, p-value = 0.9289
Shapiro-Wilk testi sonucunda \(p > .05\) olduğu için verinin normal dağıldığını kabul ederiz.
# tek örneklem t-testi
oneSampleTTest(boy_verisi$boy, mu = 110)
##
## One sample t-test
##
## Data variable: boy_verisi$boy
##
## Descriptive statistics:
## boy
## mean 108.493
## std dev. 0.903
##
## Hypotheses:
## null: population mean equals 110
## alternative: population mean not equal to 110
##
## Test results:
## t-statistic: -10.946
## degrees of freedom: 42
## p-value: <.001
##
## Other information:
## two-sided 95% confidence interval: [108.215, 108.771]
## estimated effect size (Cohen's d): 1.669
Analiz sonuçlarına göre şu değerlendirmeyi yapabiliriz:
Boy gelişimleri incelenen 5 yaş grubu 43 çocuğun boylarının ortalamasının, bu yaş grubundaki çocuklar için belirlenen 110 cm’lik norm değerden farklı olup olmadığını belirlemek için yapılan tek örneklem t testi sonunda, çocukların boy ortalaması ile norm değer arasında anlamlı bir fark görülmüştür.
Bakımevinde barındırılan 5 yaşındaki 43 çocuğun boy gelişimlerinin normal seyirde (\(110\) cm) olup olmadığını test etmek amacıyla yapılan tek örneklem t-testi sonucunda; çocukların boy ortalamasının (\(\bar{X} = 108.493\), \(SS = 0.903\)), belirlenen test değerinden (\(110\) cm) istatistiksel olarak anlamlı derecede düşük olduğu görülmüştür, \(t(42) = -10.95\), \(p < .001\).
lsr paketindeki fonksiyon p’nin yaklaşık değerini verir.
Kendiniz çalışırken böyle bir ifade görürseniz anlamanız için buraya
ekledim. Yuvarlanmış değer sizin için yeterli).