Bak ve bulursun (bir korelasyon)


66

Birkaç yüz ölçümüm var. Şimdi, her önlemi her önlemle ilişkilendirmek için bir tür yazılım kullanmayı düşünüyorum. Bu, binlerce korelasyon olduğu anlamına gelir. Bunlar arasında (istatistiksel olarak), veriler tamamen rastgele olsa bile (her ölçüm sadece yaklaşık 100 veri noktasına sahip) yüksek bir korelasyon olmalıdır.

Bir korelasyon bulduğumda, korelasyonu ne kadar zor aradığım hakkındaki bilgiyi buna nasıl eklerim?

İstatistik konusunda üst düzeyde değilim, bu yüzden lütfen yanımda ol.


5
Bu, neden çoklu hipotez testine ihtiyaç duyulduğunun harika bir örneğidir.

Muhtemelen bir kişi, en büyük korelasyon için önem eşikleri, ikinci en büyük korelasyon için farklı bir eşik ve benzerleri için boş bir dağılım oluşturmak için permütasyon prosedürünü kullanabilir. Umarım bu sadece Python veya R'de birkaç saat sürecektir (Ha! Ünlü son sözler.) Ama kesinlikle birileri zaten bunu yapmış ve kodu bir yere kaydetmiş olmalı?

4
RBu makinede, 300 x 100'lük bir matris için maksimum korelasyon katsayısının boş geçirgenlik dağılımının 1000 gerçekleştiriminin elde edilmesi için 18 saniye sürer x:correl <- function(x, k=1) { n <- dim(x)[2] * (dim(x)[2]-1) / 2; v <- cor(x); sort(v[lower.tri(v)])[(n-k+1):n] }; sim <- replicate(1000, correl(apply(x,2,sample)))
whuber

Yanıtlar:


74

Bu, açık bir istatistiksel düşünür olan birine layık mükemmel bir sorudur, çünkü çoklu testlerin ince ama önemli bir yönünü tanır.

Bonferroni ve Sidak yöntemleri ( qv ) gibi çoklu korelasyon katsayılarının p-değerlerini (veya güven aralıklarını genişletmek için eşit olarak) ayarlamak için standart yöntemler vardır . Bununla birlikte, bunlar genel olarak korelasyon katsayıları arasında bulunması gereken matematiksel ilişkilerden dolayı büyük korelasyon matrisleriyle çok tutucudur. (Bu tür ilişkilerin bazı örnekleri için son soruyu ve sonraki ipucunu görün .) Bu durumla başa çıkmak için en iyi yaklaşımlardan biri bir permütasyon (veya yeniden örnekleme) testi yapmaktır.. Bunu korelasyonlarla yapmak kolaydır: testin her yinelemesinde, alanların her birinin değerlerinin sırasını rastgele karıştırın (böylece herhangi bir doğal korelasyonu yok edin) ve tam korelasyon matrisini yeniden hesaplayın. Bunu birkaç bin kez (veya daha fazla) yapın, ardından korelasyon matrisinin girişlerinin dağılımlarını örneğin 97.5 ve 2.5 yüzdelik değerlerini vererek özetleyin: bunlar sıfırın altında karşılıklı simetrik iki taraflı% 95 güven aralığı olarak görev yapacak korelasyonu olmayan hipotezi. (Bunu çok sayıda değişkenle ilk kez yaptığınızda, bazı korelasyon katsayılarının ne kadar yüksek olabileceği konusunda, kendinize ait bir korelasyon olmasa bile, şaşıracaksınız.)

Sonuçları bildirirken, hangi hesaplamaları yaparsanız yapın, aşağıdakileri eklemelisiniz:

  • Korelasyon matrisinin boyutu ( yani kaç değişkene baktığınızı).

  • Korelasyon katsayılarının herhangi birinin p-değerlerini veya "önemini" nasıl belirlediğiniz ( örneğin , olduğu gibi bırakılmış, bir Bonferroni düzeltmesi uygulanmış, bir permütasyon testi yapmış veya ne olursa olsun).

  • Spearman sıra korelasyonu gibi alternatif korelasyon ölçütlerine bakıp bakmadığınız . Öyleyse, neden gerçekten bildirdiğiniz ve kullandığınız yöntemi seçtiğinizi de belirtin.


1
Bu, p-değeri ayarlama yöntemlerinin oldukça ayrıntılı bir açıklamasıdır, ancak söylenmemiş kalan, ayarlama kriterleridir. Geleneksel olarak aile yönünden hata oranı olmuştur. Ancak bu kesin bir kriterdir ve binlerce karşılaştırmaya baktığınızda faydalı değildir. Bu durumda ilk önce Benjamini tarafından önerilen yanlış keşif oranı şimdi yaygın olarak kullanılmaktadır.
Michael Chernick

Ya çok iyi tanımlanmış değişken çiftlerinin (örneğin her ve değişken olduğu , ..., korelasyonlarına bakmak istiyorsak, ama umursamıyoruz. diğer tüm olası kombinasyonlar (yani )? Hala bir düzeltmeye ihtiyacımız var mı? corr(x1,y1)corr(xn,yn)xi c O r r ( x i , y j ) i jyicorr(xi,yj) ij
Jase

@Jase Evet, sen yaparsın. Düzeltme miktarı değişkenler arasındaki karşılıklı ilişkilere bağlıdır. Simülasyona dayalı yöntemler, bu düzeltmeleri belirlemenin tek uygulanabilir yolu ile ilgilidir.
whuber

Vay güzel. Konuştuğunuz bu yöntem aynı zamanda seri korelasyon ve heteroscedastisite sorunları için standart hataları düzeltecek mi?
Jase

@Jase Bir heterossedastik modelde korelasyon katsayılarını yorumlamak zor olacaktır. Yorumunuz, çok değişkenli korelasyon katsayılarının tahmininden ziyade, bir zaman serisi ayarında lineer bir modele benziyor.
whuber

10

Peter Flom'un sorusuna yanıtını takiben, korelasyon matrisindeki daha yüksek seviyeli yapıya bakan tekniklerle daha iyi hizmet görebilirsin.

Faktör analizi, PCA, çok boyutlu ölçeklendirme ve değişken küme analizi gibi teknikler değişkenlerinizi nispeten daha ilişkili değişken kümeleri halinde gruplamak için kullanılabilir.

Ayrıca, ne tür bir yapının olması gerektiği hakkında teorik olarak düşünmek isteyebilirsiniz. Değişken sayınız büyükse ve gözlem sayınız azsa, önceden beklentilere daha çok güvenebilirsiniz.


1
(+1) OP'nin @Peter Flom'un cevabı üzerine yaptığı yorum ışığında iyi tavsiye.
whuber

7

Bu çoklu karşılaştırmalara bir örnektir. Bu konuda geniş bir literatür var.

Eğer 100 değişkeniniz varsa, o zaman 100 * 99/2 = 4950 korelasyonunuz olacaktır.

Veriler sadece gürültü ise, bunların 20'sinde 1'in p = 0,05'te anlamlı olmasını beklersiniz. 247,5

Daha ileri gitmeden önce, bunu neden yaptığını söyleyebilseydin daha iyi olurdu. Bu değişkenler nelerdir, neden onları ilişkilendirirsiniz, temel fikriniz nedir?

Yoksa sadece yüksek korelasyonlar için mi balık tutuyorsunuz?


3
Bu şekilde yapmak istememin nedeni, verilerimi anlama konusunda açık bir zihnim olmasıydı, belki de bir şekilde aydınlanma amacıyla daha önce düşünmediğim korelasyonlar için balıkçılık yapıyorum. Bunu kesinlikle patronumu ya da keyfi bir şeyi tatmin etmek için yapmıyorum. Bu soruya genel bir cevap almak istediğim için gelecekteki tüm durumlarda kullanabildiğim için verilerin özelliklerine girmemeyi tercih ederim.
David,

7

Belki de hipotezler oluşturmak için verilerin rastgele bir alt kümesi üzerinde ön analizler yapabilir ve ardından verilerin kalanını kullanarak ilgi çeken bu hipotezleri test edebilirsiniz. Bu şekilde, neredeyse birçok çoklu testi düzeltmeniz gerekmez. (Bence...)

Tabii ki, eğer böyle bir prosedür kullanıyorsanız, son analiz için kullanılan veri setinin boyutunu azaltacak ve gerçek etkileri bulma gücünüzü azaltacaksınız. Bununla birlikte, çoklu karşılaştırmalar için yapılan düzeltmeler de gücü azaltır ve bu yüzden mutlaka bir şeyleri kaybedeceğinizden emin değilim.


5
(+1) Bu genel olarak harika bir fikir. Bununla birlikte, büyük korelasyon matrisleri için, çok fazla istatistik vardır ve bunların çoğu eşzamanlı olarak genellikle ayarlanması için ödediği gibi sahte olabilir. Aksi halde, bekletme verilerinde kaybolan çok sayıda yanıltıcı "önemli" korelasyonun peşinden koşarsınız. (Örneğin, ilişkisiz 50 standart normal değişkenden birkaç yüz
çizimle
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.