Ana içeriğe geç
Modül 3 · Ders 2 ders 2Kurstaki 6/10~15 min
Modül dersleri (2/2)

Keşif ve Toplama

R öncelikle istatistiksel bir ortam olarak oluşturulduğundan, verilerin vektörler veya tablolar halinde dağılımını analiz etmek, özetlemek ve anlamak için birçok yerleşik işlev sağlar.

Temel İstatistiksel Fonksiyonlar

R, merkezin ana ölçülerini ve sayısal vektörlere yayılmayı kolayca hesaplamanıza olanak tanır:

  • mean(x): Elemanların aritmetik ortalamasını hesaplar.
  • median(x): Medyanı (orta değer) hesaplar.
  • sd(x): Standart sapmayı hesaplar (verilerin ne kadar yayıldığına ilişkin bir ölçü).
  • min(x) ve max(x): Sırasıyla minimum ve maksimum değerleri döndürür.
R
values <- c(10, 12, 15, 18, 20, 22)

avg <- mean(values)
dispersion <- sd(values)

cat("Mean:", avg, "- Std Dev:", round(dispersion, 2), "\n")

Eksik Verileri İşleme (NA)

Gerçek dünyada, veri kümeleri genellikle R'de NA (Mevcut Değil) özel varlığıyla temsil edilen eksik değerleri içerir.

Tek bir NA içeren bir vektör üzerinde ortalamayı veya başka bir toplamı hesaplamaya çalışırsanız, R, sonuç olarak NA değerini döndürecektir. Eksik değerleri yok saymak için na.rm = TRUE (NA kaldır) mantıksal argümanını iletmelisiniz:

R
temperatures <- c(18, 21, NA, 24, 19)

# This will return NA
print(mean(temperatures))

# This will ignore the NA and perform the calculation on valid values
print(mean(temperatures, na.rm = TRUE))

summary() ile Genel Özet

summary() işlevi, bir vektöre veya tüm Veri Çerçevesine ilişkin eksiksiz bir istatistiksel genel bakış sağlayan, minimum, ilk çeyrek, medyan, ortalama, üçüncü çeyrek ve maksimumu gösteren güçlü bir araçtır:

R
prices <- c(5, 10, 15, 20, 100)
print(summary(prices))

Verileri aggregate ile Toplama

Veri çerçeveleriyle çalışırken, belirli gruplar veya kategoriler için özet istatistiklerin (ortalama veya toplam gibi) hesaplanması yaygındır. R'deki aggregate() işlevi bu işlemi basitleştirir:

R
df <- data.frame(
  department = c("HR", "IT", "HR", "IT"),
  salary = c(3000, 4500, 3200, 4800)
)

# Calcola la media dei salari per dipartimento
avg_salaries <- aggregate(salary ~ department, data = df, FUN = mean)
print(avg_salaries)

salary ~ department sözdizimi "salary değişkenini department değişkenine göre analiz et" anlamına gelir. FUN = mean argümanı her grup için aritmetik ortalamayı hesaplamak istediğimizi belirtir.

subset ile Gelişmiş Filtreleme

subset() işlevi, karmaşık köşeli parantezlerin kullanımını ortadan kaldırarak, bir veri çerçevesinden satır ve sütunların alt kümelerini çıkarmak için sezgisel ve zarif bir yol sağlar:

R
employees <- data.frame(
  name = c("Alice", "Bob", "Charlie"),
  age = c(25, 34, 29),
  active = c(TRUE, FALSE, TRUE)
)

# Filtra solo i dipendenti attivi con età superiore a 28
active_employees <- subset(employees, active == TRUE & age > 28)

Kendin dene

Egzersiz#r.m3.l2.e1
Denemeler: 0Yükleniyor…

Vektör sıcaklıkları göz önüne alındığında, ortalamayı hesaplayın ve bunu ortalama_temp değişkenine kaydedin. Daha sonra medyanı hesaplayın ve medyan_temp'e kaydedin.

Düzenleyici yükleniyor…
İpucu göster

ABD ortalama_temp <- ortalama(sıcaklıklar) e medyan_temp <- medyan(sıcaklıklar)

3 denemeden sonra çözüm mevcut

Egzersiz#r.m3.l2.e2
Denemeler: 0Yükleniyor…

NA değeri içeren puan vektörü göz önüne alındığında, vektörün eksik değerler hariç standart sapmasını hesaplayın ve bunu sd_scores değişkenine kaydedin.

Düzenleyici yükleniyor…
İpucu göster

na.rm = TRUE bağımsız değişkeniyle sd() işlevini kullanın: sd_scores <- sd(scores, na.rm = TRUE)

3 denemeden sonra çözüm mevcut

Egzersiz#r.m3.l2.e3
Denemeler: 0Yükleniyor…

Veri çerçevesi df göz önüne alındığında, değerler sütununun istatistiksel özetini alın ve bunu stats_summary değişkenine kaydedin.

Düzenleyici yükleniyor…
İpucu göster

$ operatörünü kullanarak sütunu çıkarın ve Summary()'ye iletin: stats_summary <- Summary(df$values)

3 denemeden sonra çözüm mevcut

Egzersiz#r.m3.l2.e4
Denemeler: 0Yükleniyor…

Veri çerçevesi satışları göz önüne alındığında, bölge sütununa göre gruplandırılmış gelir sütununun toplamını (FUN = toplam) hesaplamak için agrega() işlevini kullanın. Sonucu Region_sales değişkenine kaydedin.

Düzenleyici yükleniyor…
İpucu göster

Kullanım: bölge_satışlar <- toplam(gelir ~ bölge, veri = satış, EĞLENCE = toplam)

3 denemeden sonra çözüm mevcut

Egzersiz#r.m3.l2.e5
Denemeler: 0Yükleniyor…

Veri çerçevesi ürünleri göz önüne alındığında, yalnızca 'Elektronik' kategorisine (kategori == 'Elektronik') ait olan ve fiyatı 100'den büyük (fiyat > 100) ürünleri filtrelemek için subset() işlevini kullanın. Sonucu pahalı_elektronik değişkenine kaydedin.

Düzenleyici yükleniyor…
İpucu göster

Kullanım: pahalı_elektronik <- subset(products,category == 'Elektronik' ve fiyat > 100)

3 denemeden sonra çözüm mevcut