Levene test fonksiyonu R'de nasıl kullanılır?


14

Ben istatistiklere bir yeniyim ve R ve Levene işlevini kullanmayla ilgili bir sorunum var (iki örneğin varyansının eşitliğini kontrol etmek istiyorum). Belgeler, çalıştırmam gerektiğini söylüyor:

levene.test (y, grup)

Ama y ve grup olarak ne koymalıyım bilmiyorum? Varyans eşitliğini kontrol etmek istediğim iki farklı örneğim var. Örneğin değerlerinden birini y, ikincisini grup parametresi olarak mı koymalıyım?

İpucu var mı?

Yanıtlar:


17

Diyelim ki, R'de 1. örneğiniz adlı bir vektörde saklanır sample1ve 2. örneğiniz adlı bir vektörde saklanır sample2.

Önce iki örneğinizi tek bir vektörde birleştirmeniz ve iki grubu tanımlayan başka bir vektör oluşturmanız gerekir:

y <- c(sample1, sample2)

ve

group <- as.factor(c(rep(1, length(sample1)), rep(2, length(sample2))))

Şimdi arayabilirsiniz

library(car)
levene.test(y, group)

DÜZENLE

Bunu R'de denerken, aşağıdaki uyarıyı aldım:

'levene.test' has now been removed. Use 'leveneTest' instead...

Buna göre, leveneTestbunun yerine bir göz atmalısınız ...


Teşekkürler! Ama bu kadar kibar ve neden bu şekilde gitmesi gerektiğini açıklar mısın? Bunu anlamak isterim ki bir dahaki sefere soru sormam gerekmiyor ve diğerlerine yardım edebiliyorum.
Jakub

@ Jakub: Bu şekilde gidiyor çünkü bu yapı kullanılarak hayata geçirildi. Yardım, birinci bağımsız değişkenin yanıt değişkeni, ikinci bağımsız değişkenin grup değişkeni olması gerektiğini belirtir.
ocram

Çoğu durumda R, genellikle "uzun" olarak adlandırılan bu tür bir veri formatını tercih ediyor gibi görünmektedir. Yeniden şekillendirme paketi, verilerinizi yeniden şekillendirmek için kullanılabilecek eriyik ve döküm adı verilen işlevler sağlar, ancak bunlar iki değişkenli basit bir durum için gerekenden daha karmaşıktır.
russellpierce

Sadece onaylamak için, bu örnek 1 ve örnek 2'nin frekans spektrumlarını test etmez, doğru mu? Örneğin, örnek 1: 1,0,2,1,0 ve örnek 2: 1,1,3,0,0 diyelim. Örnek 1'in dağıtımını oluşturmak için örnek 1'in 1'lerini ve 0'larını doldurmaz, değil mi? Umarım takip sorum mantıklı mı?
Atticus29

14

Ocram'ın cevabı tüm önemli parçalara sahiptir. Ancak, istemiyorsanız tüm Rcmdr'yi yüklemeniz gerekmez. İlgili kütüphane "araba" dır. Ancak ocram'ın belirttiği gibi, levene.test kullanımdan kaldırılmıştır. Kullanımdan kaldırmanın işlevsellik veya kod değişikliği olmadığını unutmayın (bu noktada, 18.09.2011). Basitçe işlev adında bir değişikliktir. Yani levene.test ve leveneTest aynı şekilde çalışır. Kayıt için bu basit durum için leveneTest ve yeniden kullanılabilir yeniden şekillendirme kodu kullanarak bir örnek sunmak düşündüm:

#Creating example code
sample1 <- rnorm(20)
sample2 <- rnorm(20)

#General code to reshape two vectors into a long data.frame
twoVarWideToLong <- function(sample1,sample2) {
    res <- data.frame(
        GroupID=as.factor(c(rep(1, length(sample1)), rep(2, length(sample2)))),
        DV=c(sample1, sample2)
    )   
}   

#Reshaping the example data
long.data <- twoVarWideToLong(sample1,sample2)

#There are many different calls here that will work... but here is an example
leveneTest(DV~GroupID,long.data)

4

Verileri hazırlamanın en kolay yolu (bence) reshape2 paketini kullanmaktır:

#Load packages
library(reshape2)
library(car)

#Creating example data
sample1 <- rnorm(20)
sample2 <- rnorm(20)

#Combine data
sample <- as.data.frame(cbind(sample1, sample2))

#Melt data
dataset <- melt(sample)

#Compute test
leveneTest(value ~ variable, dataset)
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.