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))
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.
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")
Var1 | Freq |
---|---|
Erkek | 74 |
Kadin | 257 |
knitr::kable(table(data$SES),caption = "SES Frekans Tablosu",format = "markdown")
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ı"
)
#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 - .))
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()
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
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ı.