df <- read_csv("pisa2015.csv")
## New names:
## Rows: 5895 Columns: 223
## ── Column specification
## ──────────────────────────────────────────────────────── Delimiter: "," chr
## (2): CNT, STRATUM dbl (221): ...1, CNTRYID, CNTSCHID, CNTSTUID, BOOKID,
## W_FSTUWT, W_FSTURWT1, ...
## ℹ Use `spec()` to retrieve the full column specification for this data. ℹ
## Specify the column types or set `show_col_types = FALSE` to quiet this message.
## • `` -> `...1`
head(df)
## # A tibble: 6 × 223
## ...1 CNT CNTRYID CNTSCHID CNTSTUID BOOKID W_FSTUWT W_FSTURWT1 W_FSTURWT2
## <dbl> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 1 TUR 792 79200001 79200939 31 193. 290. 296.
## 2 2 TUR 792 79200001 79206774 96 193. 290. 296.
## 3 3 TUR 792 79200001 79204670 43 193. 290. 296.
## 4 4 TUR 792 79200001 79201647 32 193. 290. 296.
## 5 5 TUR 792 79200001 79203718 89 193. 290. 296.
## 6 6 TUR 792 79200001 79204968 91 193. 290. 296.
## # ℹ 214 more variables: W_FSTURWT3 <dbl>, W_FSTURWT4 <dbl>, W_FSTURWT5 <dbl>,
## # W_FSTURWT6 <dbl>, W_FSTURWT7 <dbl>, W_FSTURWT8 <dbl>, W_FSTURWT9 <dbl>,
## # W_FSTURWT10 <dbl>, W_FSTURWT11 <dbl>, W_FSTURWT12 <dbl>, W_FSTURWT13 <dbl>,
## # W_FSTURWT14 <dbl>, W_FSTURWT15 <dbl>, W_FSTURWT16 <dbl>, W_FSTURWT17 <dbl>,
## # W_FSTURWT18 <dbl>, W_FSTURWT19 <dbl>, W_FSTURWT20 <dbl>, W_FSTURWT21 <dbl>,
## # W_FSTURWT22 <dbl>, W_FSTURWT23 <dbl>, W_FSTURWT24 <dbl>, W_FSTURWT25 <dbl>,
## # W_FSTURWT26 <dbl>, W_FSTURWT27 <dbl>, W_FSTURWT28 <dbl>, …
# Science (Fen Basarisi)
pv_scie <- df %>%
select(matches("^PV[0-9]+SCIE$")) %>%
names()
df <- df %>%
mutate(science_mean = rowMeans(select(., all_of(pv_scie)), na.rm = TRUE))
# Self-efficacy ( OZ Yeterlilik)
st129_items <- df %>% select(matches("^ST129")) %>% names()
df <- df %>%
mutate(selfeff_mean = rowMeans(select(., all_of(st129_items)), na.rm = TRUE))
# Gender(Cinsiyet)
df$gender <- df$ST004D01T
df_sub <- df %>% filter(CNT %in% c("TUR"))
df_sub <- df_sub %>%
mutate(
selfeff_c = selfeff_mean - mean(selfeff_mean, na.rm = TRUE),
ESCS_c = ESCS - mean(ESCS, na.rm = TRUE)
)
dfAnaliz <- df_sub %>%
select(science_mean, selfeff_c, ESCS_c, gender)
model_TUR <- lm(science_mean ~ selfeff_c + ESCS_c + gender, data = dfAnaliz)
summary(model_TUR)
##
## Call:
## lm(formula = science_mean ~ selfeff_c + ESCS_c + gender, data = dfAnaliz)
##
## Residuals:
## Min 1Q Median 3Q Max
## -223.039 -50.058 -2.653 48.498 209.183
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 426.0437 2.8921 147.314 <2e-16 ***
## selfeff_c -12.2926 1.3841 -8.881 <2e-16 ***
## ESCS_c 18.9282 0.7939 23.843 <2e-16 ***
## gender -1.1828 1.8376 -0.644 0.52
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 68.77 on 5614 degrees of freedom
## (277 observations deleted due to missingness)
## Multiple R-squared: 0.1096, Adjusted R-squared: 0.1091
## F-statistic: 230.2 on 3 and 5614 DF, p-value: < 2.2e-16
Öğrencilerin fen başarı puanlarını yordamak amacıyla, öz yeterlik, sosyoekonomik durum ve cinsiyet değişkenlerini içeren bir çoklu doğrusal regresyon modeli kurulmuştur.
selfeff_c (öz-yeterlik) Estimate = -12.29 -> Bir birim öz-yeterlik artışı, fen puanını ortalama 12 puan azaltmaktadır. Öz yeterlik yükseldikçe fen başarısı düşmektedir ve bu beklenenin tersi bir sonuç. p < .001 -> istatistiksel olarak anlamlı
ESCS_c (Sosyoekonomik düzey) Estimate = 18.93 -> Bir birim sosyoekonomik düzey artışı, fen puanını yaklaşık 19 puan artırmaktadır. Sosyoekonomik düzey arttıkça fen başarısı artmaktadır. p < .001 -> istatistiksel olarak anlamlı
gender (cinsiyet) Estimate = -1.18 -> Cinsiyetin fen başarısı üzerinde anlamlı bir etkisi yoktur.
p = .52 -> istatistiksel olarak anlamlı değil.