R'de, mean()
ve median()
beklediğiniz şeyi yapan standart fonksiyonlardır. mode()` size nesnenin dahili depolama modunu söyler, argümanında en çok geçen değeri değil. Ancak bir vektör (veya liste) için istatistiksel modu uygulayan standart bir kütüphane işlevi var mı?
Tek değişkenli tek modlu (ve bazen çok modlu) verilerin modunun tahmin edicilerini ve olağan olasılık dağılımlarının modlarının değerlerini sağlayan modeest
paketi vardır.
mySamples <- c(19, 4, 5, 7, 29, 19, 29, 13, 25, 19)
library(modeest)
mlv(mySamples, method = "mfv")
Mode (most likely value): 19
Bickel's modal skewness: -0.1
Call: mlv.default(x = mySamples, method = "mfv")
Daha fazla bilgi için bakınız bu sayfa
R o kadar çok eklenti paketine sahiptir ki, bunlardan bazıları sayısal bir liste/seri/vektörün [istatistiksel] modunu sağlayabilir.
Ancak R'nin standart kütüphanesinde böyle bir yerleşik yöntem yok gibi görünüyor! Bunu aşmanın bir yolu, aşağıdaki gibi bir yapı kullanmaktır (ve sık kullanıyorsanız bunu bir fonksiyona dönüştürmektir...):
mySamples <- c(19, 4, 5, 7, 29, 19, 29, 13, 25, 19)
tabSmpl<-tabulate(mySamples)
SmplMode<-which(tabSmpl== max(tabSmpl))
if(sum(tabSmpl == max(tabSmpl))>1) SmplMode<-NA
> SmplMode
[1] 19
Daha büyük örnek liste için, max(tabSmpl) değeri için geçici bir değişken kullanmayı düşünmelisiniz (R'nin bunu otomatik olarak optimize edeceğini bilmiyorum)
Referans: Bu KickStarting R dersi<br>'deki "How about median and mode? " bölümüne bakın; Bu, (en azından bu dersin yazıldığı sırada) R'de bir mod işlevi olmadığını doğruluyor gibi görünüyor (şey... mode(), öğrendiğiniz gibi değişkenlerin türünü belirtmek için kullanılır).