Ana içeriğe geç

R mean() Fonksiyonu: Ortalamalara Başlangıç

R’nin yerleşik ortalama fonksiyonlarını kullanarak sayısal, mantıksal ve ağırlıklı verilerin ortalamasını hesaplayın. Eksik değerleri nasıl yöneteceğinizi ve fonksiyonu vektörlere ve veri çerçevelerine nasıl uygulayacağınızı anlayın.
· 4 dk. oku

Yapay Zeka ile Keşfedin

R’de sayısal verileri özetlerken ortalamayı hesaplamak genellikle ilk adımdır. Benim de genelde ilk yaptığım şey budur. 

“Ortalama” her zaman aritmetik ortalamayı ifade etmek zorunda değil, elbette; ancak bu yazıda öyle olduğunu varsayıyorum çünkü R’de bu amaç için standart araç olan mean() fonksiyonuyla nasıl çalışacağınızı göstereceğim. 

R’de mean() Ne Yapar?

mean() fonksiyonu sayısal verilerin aritmetik ortalamasını hesaplar. Başka bir deyişle, vektörünüzdeki veya sütununuzdaki tüm değerleri toplar ve mevcut toplam değer sayısına böler. mean() temel R’nin bir parçası olduğundan ek paket yüklemeye gerek yoktur. Yani R’yi açtığınız anda kullanıma hazırdır.

mean() Fonksiyonunun Söz Dizimi

mean()’in ne yaptığını biliyoruz, şimdi de uygulamaya başlayabilmeniz için temel söz dizimine bakalım:

mean(x, na.rm = FALSE, ...) 
  • x: Sayısal bir vektör veya nesne.

  • na.rm: Mantıksal. TRUE ise, mean() NA değerlerini yok sayar.

İlerledikçe, eksik verileri ele almak ve farklı veri yapılarıyla çalışmak bazı incelikler getirir; buna dikkat edin. 

R’de Sayısal Bir Vektörün Ortalamasını Hesaplamak

Muhtemelen en temel şey bir vektörün ortalamasını hesaplamaktır: 

daily_temperatures <- c(72, 68, 75, 70, 69)
mean(daily_temperatures)

Bu satır 72, 68, 75, 70 ve 69’un ortalamasını döndürür; sonuç 70.8’dir.

R’de na.rm ile Eksik Değerleri Yönetmek

Gerçek veri setlerinde eksik değerler vardır. Verinizde herhangi bir eksik öğe varsa, mean() varsayılan davranış olarak NA döndürür. Beklemiyorsanız bu sizi şaşırtabilir; bu yüzden na.rm argümanını öğrenmek için zaman ayırıyoruz.

survey_scores <- c(82, 90, NA, 88, 85)
mean(survey_scores)

Bunu çalıştırmak NA döndürür. R’ye eksik değerleri yok saymasını söylemek için na.rm = TRUE olarak ayarlamanız yeterlidir:

mean(survey_scores, na.rm = TRUE)

Artık mean(), yalnızca mevcut sayıları kullanarak ortalamayı hesaplar. 

R’de mean() Fonksiyonunu Veri Çerçeveleriyle Kullanmak

Kullanımını R’de veri setleri için tipik bir yapı olan veri çerçevelerine genişletelim. Belirli bir sütunun ortalamasını istiyorsanız, $ operatörünü kullanarak ona başvurmanız yeterli:

student_scores <- data.frame(
  student_name = c("Amir", "Bianca", "Carlos"),
  math_score = c(92, 85, 88)
)

mean(student_scores$math_score)

Bu, veri çerçevenizdeki tüm öğrencilerin ortalama notunu hesaplar. Bu yaklaşımı herhangi bir sayısal sütuna uygulayabilirsiniz (ancak sütunun sayısal olması gerekir).

R’de Mantıksal Değerlerin Ortalaması

Şimdiye kadar sayısal verilere odaklandık; ancak mean()’in mantıksal vektörlerle de çalıştığını öğrenmek sizi şaşırtabilir. Bu, şimdiye dek üstünkörü geçtiğim küçük ama önemli bir ayrıntı.

Mantıksal değerlerle mean() kullanabilirsiniz; çünkü R’de TRUE 1, FALSE ise 0 olarak değerlendirilir. Dolayısıyla bir mantıksal vektörün ortalamasını almak, TRUE değerlerinin oranını verir. İkili sonuçları özetlemeniz gerektiğinde bu faydalı olabilir.

quiz_passed_flags <- c(TRUE, FALSE, TRUE, TRUE)
mean(quiz_passed_flags)

Burada sonuç 0.75’tir; çünkü 4 değerden 3’ü TRUE’dur.

R’de Ağırlıklı Ortalama Bulmak 

Bazen farklı değerlerin sonuca eşit olmayan katkıları olduğunu düşündüğünüzde ağırlıklı ortalamaya ihtiyaç duyarsınız. İşte weighted.mean() devreye girer:

course_grades <- c(88, 92, 75)
assignment_weights <- c(0.3, 0.4, 0.3)

weighted.mean(course_grades, assignment_weights)

weighted.mean() kullanarak, değerleriniz arasında değişen önem veya sıklığı hesaba katabilirsiniz. mean() bunu kendi başına yapmaz.

Dikkat Edilmesi Gereken Bazı Noktalar

Bunların çoğunu şimdiye kadar andım; ancak olası sorunları veya notları tek yerde toparlayayım:

  • Sayısal olmayan veriler: Vektörünüz veya sütununuz sayısal ya da mantıksal değilse, mean() hata verir.

  • NA yönetimi: Eksik veriniz varken na.rm = TRUE kullanmayı unutmak sizi her seferinde tökezletir.

  • Boş vektörler: mean(numeric(0)) bir uyarıyla birlikte NA döndürür.

R’de Benzer Fonksiyonlar

R, verinizi farklı açılardan keşfetmenize yardımcı olan çeşitli ilişkili fonksiyonlar sağlar. Bunların hepsi temel R’dedir; yani bu fonksiyonları kütüphane içe aktarmadan kullanabilirsiniz. 

  • median(): Medyan değer için

  • sd(): Standart sapma için

  • sum(): Değerlerin toplamı için

Farklı merkezi eğilim ölçülerinin önemini daha fazla öğrenmek isterseniz, çok kapsamlı eğitimimizi inceleyin: Ortalama vs. Medyan: Farkı Bilmek.

Sonuç

Çoğu temel veri analizi görevinde mean(), sayıları özetlemek için ilk durağınızdır.

Öğrenmeye Introduction to R ve Exploratory Data Analysis in R gibi kurslarımızla devam edin.

Josef Waples

Yazar

Josef Waples

Bilimsel dergilerde yayımlanan araştırma makalelerine katkıları olan bir veri bilimi yazarı ve editörüyüm. Özellikle lineer cebir, istatistik, R ve benzeri konularla ilgileniyorum. Aynı zamanda epey satranç da oynarım! 

Konular

İlgili