Ödevler

  1. aşağıdaki geom_jitter fonksiyonunun kullanım amacını araştırın.

##geom_jitter fonksiyonunun temel işlevleri şunlardır: * Çakışmayı Önleme: Üst üste binen noktaları birbirinden ayırarak görsel kirliliği engeller. * Rastgelelik Ekleme: Noktalara küçük miktarda ‘titreşim’ ekleyerek gerçek veri yoğunluğunu ortaya çıkarır. * Yoğunluk Analizi: Büyük veri gruplarında hangi bölgelerin daha kalabalık olduğunu netleştirir.

  1. theme_classic fonksiyonunun alternatiflerini bulun ve deneyin.

##theme_classic alternatifleri theme_minimal,theme_bw ve theme_dark; ben theme_bw yi ve theme_minimal i denedim

  1. bu ders notlarında yer alan palmerpenguins’teki penguins veri seti gibi bir veri üzerinde (örn. midiPISA) regresyon denklemi kurun ve tüm kodları kendi veri setinize uygulayarak çalıştırın.

##(cars) data verisini kullandım

  1. Kendi seçtiğiniz veri seti üzerinde regresyon modeli kurma, saçılım diyagramı oluşturma, grafiğe regresyon çizgisi ekleme, eğim, kesişim ve R-squared katsayılarını yorumlama gibi tüm adımları yapın ve açıklamalarını yazın.
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(ggplot2)
data(cars)
names(cars)
## [1] "speed" "dist"
glimpse(cars)
## Rows: 50
## Columns: 2
## $ speed <dbl> 4, 4, 7, 7, 8, 9, 10, 10, 10, 11, 11, 12, 12, 12, 12, 13, 13, 13…
## $ dist  <dbl> 2, 10, 4, 22, 16, 10, 18, 26, 34, 17, 28, 14, 20, 24, 28, 26, 34…
# Değişkenleri Türkçeleştirelimm
arabalar <- cars %>% 
  rename(hiz = speed, mesafe = dist)
arabalar <- arabalar |> 
  select(hiz, mesafe) |> 
  na.omit()
ggplot(arabalar, aes(x = hiz, y = mesafe)) +
  geom_point() +
  labs(x = "Hiz (mph)",
       y = "Durma Mesafesi (ft)",
       title = "Araba hizi ve Durma Mesafesi İlişkisi")

## Bu grafikte; • her bir nokta bir arabayı temsil eder • yatay eksen: durma mesfaesini • dikey eksen: hizi

Arabaların hızı arttıkça durma mesafelerinde bir artış var mı?

# Hiz (X) mesafeyi (Y) ne kadar etkiliyor?
araba_mod <- lm(mesafe ~ hiz, data = arabalar)
summary(araba_mod)
## 
## Call:
## lm(formula = mesafe ~ hiz, data = arabalar)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -29.069  -9.525  -2.272   9.215  43.201 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -17.5791     6.7584  -2.601   0.0123 *  
## hiz           3.9324     0.4155   9.464 1.49e-12 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 15.38 on 48 degrees of freedom
## Multiple R-squared:  0.6511, Adjusted R-squared:  0.6438 
## F-statistic: 89.57 on 1 and 48 DF,  p-value: 1.49e-12

#Eğim (Slope - hiz katsayısı): Analiz sonucunda eğim katsayısı 3.9324 olarak bulunmuştur. Bu değer pozitif olduğu için araba hızı ile durma mesafesi arasında doğru orantılı bir ilişki vardır. Yani, arabanın hızı 1 mph arttığında, durma mesafesinin yaklaşık 3.93 fit artması beklenmektedir.

#Kesişim (Intercept): Kesişim değeri -17.5791 olarak hesaplanmıştır. Bu, teorik olarak hız 0 olduğunda beklenen durma mesafesini ifade eder. Matematiksel bir başlangıç noktasıdır; gerçek hayatta duran bir aracın durma mesafesi negatif olamaz.

#R-squared (\(R^{2}\)): Modelin açıklayıcılık oranı (Multiple R-squared) 0.6511’dir. Bu sonuç, durma mesafesindeki değişimin yaklaşık %65.1’inin araba hızı değişkeni tarafından açıklandığını gösterir . Bu, hızın durma mesafesi üzerinde oldukça güçlü bir etkisi olduğunu kanıtlar.

#Artık Standart Hatası (Residual Standard Error): Bu değer 15.38 olarak bulunmuştur. Bu değer, modelimizin yaptığı tahminler ile gerçek veriler arasında ortalama 15.38 fitlik bir tahmin hatası payı olduğunu gösterir.

coef(araba_mod)
## (Intercept)         hiz 
##  -17.579095    3.932409
ggplot(arabalar, aes(x = hiz, y = mesafe)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE, color = "green") +
  labs(x = "hiz (mph)",
       y = "durma mesafesi (ft)",
       title = "Araba hizi ile durma mesafesi Arasındaki İlişki") +
  theme_minimal() # Alternatif tema denemesi
## `geom_smooth()` using formula = 'y ~ x'

new_arabalar <- data.frame(hiz = 40)
predict(araba_mod, newdata = new_arabalar)
##        1 
## 139.7173
ggplot(arabalar, aes(x = hiz, y = mesafe)) +
  geom_jitter(width = 0.3, height = 0.3, alpha = 0.5, color = "black") +
  geom_point(alpha = 0.5, size = 3, color = "blue") +
  geom_smooth(method = "lm", se = FALSE, color = "red") +
  labs(
       x= "Araba Hizi (mph)",
       y = "Durma mesafesi (ft)",
    title = "Basit Doğrusal Regresyon"
  ) +
  theme_bw() +
  theme(
    plot.title = element_text(size = 20, face = "bold"),
    axis.title = element_text(size = 12),
    axis.text = element_text(size = 12)
  )
## `geom_smooth()` using formula = 'y ~ x'