# ============================================================
# R ile Tanimlayici Istatistik
# Senaryo: 120 universite ogrencisine uygulanan sinav kaygisi
#          olceginin puanlari ozetleniyor.
# Kullanim: Bu dosyayi ve r-ile-tanimlayici-istatistik-veri.csv
#           dosyasini ayni klasore koyun, RStudio'da calistirin.
# Kaynak: veriakademi.com
# ============================================================

# --- 1. Veriyi oku ------------------------------------------
veri <- read.csv("r-ile-tanimlayici-istatistik-veri.csv", fileEncoding = "UTF-8")
head(veri)
str(veri)            # degisken turlerine goz at

# --- 2. Merkezi egilim olculeri -----------------------------
mean(veri$kaygi_puani)     # aritmetik ortalama
median(veri$kaygi_puani)   # medyan (ortanca)
# Mod icin hazir fonksiyon yoktur; tablo ile bulunur:
names(sort(table(veri$kaygi_puani), decreasing = TRUE))[1]

# --- 3. Dagilim olculeri ------------------------------------
sd(veri$kaygi_puani)       # standart sapma
var(veri$kaygi_puani)      # varyans
range(veri$kaygi_puani)    # en kucuk - en buyuk
IQR(veri$kaygi_puani)      # ceyrekler arasi aciklik

# --- 4. Tek komutla ozet ------------------------------------
summary(veri$kaygi_puani)

# psych paketiyle tez tablosuna hazir ozet (carpiklik/basiklik dahil)
library(psych)
describe(veri$kaygi_puani)

# --- 5. Gruplara gore ozet (bolum bazinda) ------------------
tapply(veri$kaygi_puani, veri$bolum, mean)
describeBy(veri$kaygi_puani, group = veri$bolum)

# --- 6. Histogram (teze eklenebilir) ------------------------
library(ggplot2)
grafik <- ggplot(veri, aes(x = kaygi_puani)) +
  geom_histogram(binwidth = 5, fill = "#2c7fb8", color = "white") +
  labs(x = "Sinav Kaygisi Puani", y = "Ogrenci Sayisi",
       title = "Sinav Kaygisi Puanlarinin Dagilimi") +
  theme_minimal(base_size = 13)
grafik
ggsave("r-ile-tanimlayici-istatistik-grafik.png", grafik, width = 9, height = 4.5, dpi = 100)
