library(haven)
library(dplyr)
library(knitr)
library(ggplot2)
library(readxl)
library(tidyr)
library(naniar)
library(tidyverse)
#Bu kod baya işlevsel oldu
setwd(dirname(rstudioapi::getActiveDocumentContext()$path))

1 a)

data <- read_xlsx("odev3.xlsx") %>% expss::drop_var_labs()
miss_var_table(data)
## # A tibble: 1 × 3
##   n_miss_in_var n_vars pct_vars
##           <int>  <int>    <dbl>
## 1             0     18      100

Bu durumda veri setinde kayıp veri olmadığı belirlenmiştir.

2 b)

data <- data %>%
  mutate(SES = recode(SES, "1" = "Dusuk", "2" = "Orta", "3" = "Yuksek")) %>%
  mutate(Cinsiyet = recode(Cinsiyet, "1" = "Kadin", "2" = "Erkek"))
knitr::kable(table(data$Cinsiyet),caption = "Cinsiyet Frekans Tablosu",format = "markdown")
Cinsiyet Frekans Tablosu
Var1 Freq
Erkek 74
Kadin 257
knitr::kable(table(data$SES),caption = "SES Frekans Tablosu",format = "markdown")
SES Frekans Tablosu
Var1 Freq
Dusuk 18
Orta 262
Yuksek 51
ggplot(data,aes(x = Cinsiyet))+
  geom_bar() + theme_bw() + 
  labs(
    title = "Cinsiyetlere İlişkin Frekans Grafiği",
    y = "Sayı"
  )

ggplot(data,aes(x = SES))+
  geom_bar() + theme_bw() + 
  labs(
    title = "SES Değişkenine İlişkin Frekans Grafiği",
    y = "Sayı"
  )

3 c)

#bence bu kısımda recode veya mutate ile yeniden yazmaktansa en büyük kategori etiketinin bir fazlasını kullanarak ters kodlamak daha pratik. 
data <- data %>%
  mutate(across(all_of(3:11), ~ 8 - .))

4 d)

data <- data %>%
  mutate(
    B1SUM = rowSums(data[, 3:11]),  
    B2SUM = rowSums(data[, 12:18])
  )

ggplot(data, aes(x = B1SUM)) +
  geom_histogram(bins = 20, fill = "lightblue",colour = "black") +
  labs(title = "Boyut 1'deki Maddelerin Toplam Puanlarının Dağılımı ", x = "Toplam Puan", y = "Frekans") +
  theme_bw()

ggplot(data, aes(x = B2SUM)) +
  geom_histogram(bins = 30, fill = "lightgreen",colour = "black") +
  labs(title = "Boyut 2'deki Maddelerin Toplam Puanlarının Dağılımı ", x = "Toplam Puan", y = "Frekans") +
  theme_bw()

5 e)

sd(data$B2SUM)
## [1] 9.831729
ggplot(data, aes(x = B2SUM)) +
  geom_histogram(bins = 30, fill = "lightgreen",colour = "black") +
  geom_vline(xintercept = mean(data$B2SUM),linetype = "dashed",colour = "red")+
  annotate("text", label = expression(mu == 33.02), x = 30, y = 25) +
  geom_vline(xintercept = 33.02+9.83,linetype = "dotted",colour = "blue")+
  annotate("text", label = expression(sigma == mu + 1), x = 33.02+9.83, y = 25) +
  geom_vline(xintercept = 33.02-9.83,linetype = "dotted",colour = "blue")+
  annotate("text", label = expression(sigma == mu - 1), x = 33.02-9.83, y = 25) +
  labs(title = "Boyut 2'deki Maddelerin Toplam Puanlarının Dağılımı ", x = "Toplam Puan", y = "Frekans") +
  theme_bw()
## Warning in is.na(x): is.na() (liste veya vektör) olmayan 'expression' tipinin
## Warning in is.na(x): is.na() (liste veya vektör) olmayan 'expression' tipinin
## Warning in is.na(x): is.na() (liste veya vektör) olmayan 'expression' tipinin

6 f)

library(outliers)
z_scores <- data %>%
  select(19:20) %>% scores(type = "z") %>% round(2)
library(summarytools)
## Warning: package 'summarytools' was built under R version 4.4.3
## 
## Attaching package: 'summarytools'
## The following object is masked from 'package:tibble':
## 
##     view
descr(z_scores,stats = c("min","max"),transpose = T,headings = F) %>% knitr::kable()
Min Max
B1SUM -3.48 1.20
B2SUM -2.65 1.62

Minimum ve maksimum z değerleri kesme noktası [-3,3] alındığında B1SUM için uç değer gözlenmiş olup B2SUM’da uç değer belirlenmemiştir.

library(DT)
DT::datatable(z_scores)

Tablo incelendiğinde B1SUM değişkeninde 1 uç değer olduğu görülmektedir. B2SUM değişkeni için ise uç değer gözlenmemiştir.

ggplot(data, aes(y = B1SUM)) +
  geom_boxplot(outlier.color = "red") + 
  papaja::theme_apa()

ggplot(data, aes(y = B2SUM)) +
  geom_boxplot(outlier.color = "red") + 
  papaja::theme_apa()

Kutu grafiği incelendiğinde ise B1SUM değişkeni için 3 uç değer, B2SUM değişkeni için uç değerin olmadığı gözlenmiştir.

Ödev toplamda 15 dkmı aldı.