Bir popülasyondaki rastgele bir üyenin farklı bir popülasyondaki rastgele bir üyeden “daha ​​iyi” olma olasılığını nasıl tahmin edebilirim?


15

İki farklı popülasyondan örneklemlerim olduğunu varsayalım. Her üyenin bir görev yapmasının ne kadar sürdüğünü ölçersem, her nüfusun ortalamasını ve varyansını kolayca tahmin edebilirim.

Şimdi her bir popülasyondan bir kişi ile rastgele bir eşleşme varsayarsam, birincinin ikincisinden daha hızlı olma olasılığını tahmin edebilir miyim?

Aklımda somut bir örnek var: ölçümler, A'dan B'ye bisiklet sürmemin zamanlamaları ve popülasyonlar alabileceğim farklı yolları temsil ediyor; Ben sonraki döngü için rota A seçim rota B toplama daha hızlı olacaktır olasılığı üzerinde çalışıyorum çalışıyorum. Aslında döngüsü yaptığımda, benim örnek set için başka bir veri noktası var :).

Bunun, bunu çözmeye çalışmak için son derece basit bir yol olduğunun farkındayım, en azından herhangi bir günde rüzgarın zamanımı diğer her şeyden daha fazla etkilemesi muhtemeldir, bu yüzden lütfen sorduğumu düşünüyorsanız, lütfen bana bildirin. yanlış soru ...


Bu basit binom testi ile yapılabilir & @Macro iyi bir cevaba sahiptir. Ancak, bir sorun örneklerin kendisidir: A rotasını veya B rotasını alma kararınızı etkileyebilecek herhangi bir şey var mı? Özellikle yollar kuru, rüzgâr arkanızdayken ve akşam yemeği beklerken A rotasını kullanmak ister misiniz? :) Her iki sette de aykırı değerleri etkileyebilecek ya da örnekleri bir şekilde saptırabilecek herhangi bir şeye dikkat edin. Örneğin, değişiklik yapma gereksinimini göz önünde bulundurarak örnekleme planınızı önceden ayarlamayı deneyin (örn. Güvenlik).
Iterator

Bir başka husus: Diyelim ki çok benzer araçlara sahip iki rotanız var ve ikisinin de daha hızlı olma olasılığı açısından diğerine hakim değil. Biri her zaman ya 10 ya da 20 dakikadır, diğeri her zaman tam olarak 15 dakikadır. Daha fazla belirsizliği (örneğin standart sapma) cezalandırmayı veya belirli bir zaman eşiğinden daha az sürmesi muhtemel olanı tercih etmeyi daha iyi bulabilirsiniz. Sorunuz olduğu gibi iyidir; Sadece gelecekteki bir ayrıntılandırmayı öneriyorum.
Iterator

İstatistiksel soru iyidir, ancak hangi rotanın daha hızlı olma olasılığını bulmak istiyorsanız, rotaların uzunluklarını ölçmenizi öneririm. Arazi engebeli değilse, daha kısa olan rota her zaman daha hızlı olacaktır.
mpiktas

Rüzgar önemli bir faktörse ve rüzgar hızları iki rota için ilişkiliyse, bir kişinin soruyu doğru bir şekilde cevaplamak için A ve B arasındaki bağımlılık hakkında bilgiye ihtiyacı var gibi görünecektir. Bunun için iki değişkenli verilere ihtiyacınız vardır ve aynı anda iki yoldan gitmek zordur. Veri toplamanıza yardımcı olması için başka birine başvurabilirsiniz, ancak biniciler arasındaki değişkenliği hesaba katmanız gerekir. A ve B'nin bağımsız olması durumunda, aşağıdaki cevaplar mükemmeldir.

Başka bir deyişle, hangi yolu seçeceğime karar vermeye çalışıyorsam, bir tünelden geçiyor, bir tarladan geçiyor ve rüzgar deli gibi esiyorsa, ortalama olarak çok daha kötü olsa bile alanı çok iyi seçebilirim.

Yanıtlar:


12

Çözüm

İki ortalama ve μ y ve standart sapmaları sırasıyla σ x ve σ y olsun . İki sürüş ( Y - X ) arasındaki zamanlama farkının ortalama μ y - μ x ve standart sapması √ vardır.μxμyσxσyYXμyμx . Standartlaştırılmış fark ("z skoru")σx2+σy2

z=μyμxσx2+σy2.

Senin yolculuk süreleri garip dağılımları yoksa, binmek olasılığı binmek daha uzun sürer X yaklaşık Normal kümülatif dağılım olduğu Φ değerlendirmeye, z .YXΦz

Hesaplama

Bu olasılığı sürüşlerinizden birinde çalışabilirsiniz çünkü zaten vb. Tahminleriniz var :-). Bu amaç için, birkaç anahtar değerleri ezberlemek kolaydır cp : cp ( 0 ) = .5 = 1 / 2 , Φ ( - 1 ) 0.16 1 / 6 , Φ ( - 2 ) 0.022 1 / 40 , ve Φ ( - 3 ) 0.0013μxΦΦ(0)=.5=1/2Φ(1)0.161/6Φ(2)0.0221/40 . (Yaklaşım | z | 2'den çok daha büyük olabilir, ancak Φ ( - 3 ) bilmekenterpolasyona yardımcı olur.) Φ ( z ) = 1 - Φ ( - z ) ve biraz enterpolasyon ile birlikte, problemi ve verinin doğası göz önüne alındığında, yeterince önemli olan bir anlamlı rakama olasılığı hızlı bir şekilde tahmin edebilir.Φ(3)0.00131/750|z|2Φ(3)Φ(z)=1Φ(z)

Misal

yolunun standart 6 dakikalık sapma ve rota ile 30 dakika sürdüğünü varsayalımX8 dakika standart sapma ile 36 dakika. Çok çeşitli koşulları kapsayan yeterli veri olduğunda, verilerinizin histogramları nihayetinde aşağıdakilere yaklaşabilir:Y

Two histograms

(Bunlar Gamma (25, 30/25) ve Gamma (20, 36/20) değişkenleri için olasılık yoğunluk işlevleridir. Sürüş süreleri için beklendiği gibi, kesinlikle sağa eğik olduklarını gözlemleyin.)

Sonra

μx=30,μy=36,σx=6,σy=8.

Nereden

z=363062+82=0.6.

Sahibiz

Φ(0)=0.5;Φ(1)=1Φ(1)10.16=0.84.

Bu nedenle cevabın 0,5 ile 0,84: 0,5 + 0,6 * (0,84 - 0,5) = yaklaşık 0,70 arasında olduğunu tahmin ediyoruz. (Normal dağılım için doğru ancak aşırı kesin değer 0.73'tür.)

rotasının X rotasından daha uzun sürmesi ihtimali yaklaşık% 70'dir . Bu hesaplamayı kafanızda yapmak aklınızı bir sonraki tepeden çıkaracaktır. :-)YX

(Her ikisi de Normal olmasa da, gösterilen histogramlar için doğru olasılık% 72'dir: bu, açma sürelerindeki fark için Normal yaklaşımın kapsamını ve kullanımını gösterir.)


Eğer her bir dağıtımdan iid gerçekleşmeleri varsa tahminine monte edilmiş bir carlo yeniden örnekleme yaklaşımı (cevabım) yerine normal yaklaşımı kullanmanın avantajı nedir? P(X>Y)
Makro

@Macro: eğer veriler ilgilenilen Q için özet istatistiklere indirgenebilirse, kişi daha az veri depolayabilir ... sadece bir düşünce.
Iterator

Üzgünüm, beynim ısı ile kızartıldı ve açık cevabı kaçırdım. Her biriniz farklı soruları cevaplıyorsunuz. Verdiğiniz önyükleme yöntemi tahminlerini verirken, @whuber ortalama zamanlardaki farkı düşünüyor, bu aynı değil. Y seçeneğinin zamanın% 60'ından X seçeneğinden daha kısa olduğu bir durum oluşturmak çok zor değildir , ancak Y ortalaması X için ortalamadan daha büyüktür . P(X>Y)YXYX
Yineleyici

FWIW: @whuber, farklı standart sapmalara sahip iki örnek arasındaki ortalama fark için Student t-testini tanımlamaktadır.
Iterator

1
Teşekkürler @whuber, sormaya çalıştığım sorunun cevabı bu :).
Andrew Aylett

6

İçgüdüsel yaklaşımım en istatistiksel olarak sofistike olmayabilir, ancak daha eğlenceli olduğunu görebilirsiniz :)

İyi bir grafik kağıdı alırdım ve sütunları zaman bloklarına bölerdim. Sürüşlerinizin süresine bağlı olarak - ortalama 5 dakika veya bir saatten mi bahsediyoruz - farklı boyutta bloklar kullanabilirsiniz. Her sütunun iki dakikalık bir blok olduğunu varsayalım. A yolu için bir renk ve B yolu için farklı bir renk seçin ve her sürüşten sonra uygun sütunda bir nokta yapın. Bu rengin zaten bir noktası varsa, bir satır yukarı git. Başka bir deyişle, bu mutlak sayılardaki bir histogram olacaktır.

Daha sonra, aldığınız her sürüşte eğlenceli bir histogram inşa edersiniz ve iki rota arasındaki farkı görsel olarak görebilirsiniz.

Bir bisiklet banliyö olarak kendi deneyimlerime dayanarak benim hissim (nicelemeyle doğrulanmadı), zamanların normal olarak dağılmayacağıdır - olumlu bir eğime veya başka bir deyişle üst uç zamanların uzun bir kuyruğuna sahip olacaklardır. Tipik zamanım mümkün olan en kısa zamanımdan çok daha uzun değil, ama her zaman ve sonra tüm kırmızı ışıklara çarpıyorum ve çok daha yüksek bir üst uç var. Deneyiminiz farklı olabilir. Bu yüzden histogram yaklaşımının daha iyi olabileceğini düşünüyorum, böylece dağılımın şeklini kendiniz gözlemleyebilirsiniz.

Not: Bu forumda yorum yapmak için yeterli temsilcim yok, ama whuber'ın cevabını seviyorum! Çarpıklık konusundaki endişemi örnek bir analizle oldukça etkili bir şekilde ele alıyor. Ve zihnini bir sonraki tepeden uzak tutmak için kafanda hesaplama fikrini seviyorum :)


1
+1 Yaratıcılık için. Aslında, fikriniz pratik faydaya giden yolda. Bisiklet izleme sitelerinden birini kullanmak biraz daha ilginç olurdu (hangisini şimdi unuttum, ancak segment zamanlarını izlemek için ekleyin). OP, segment zamanını çizme ve bununla ilişkili bir yoğunluk elde etme hakkında bir soru ile CV'ye veya StackOverflow'a geri dönecek olsaydı, muhteşem bir istatistiksel egzersiz olurdu - CBS, istatistiksel görselleştirme ve yoğunluk fonksiyonları, oh benim! :)
Yineleyici

1
Bisiklet segmentlerini izlemek için telefonumda Google MyTracks'ı kullandım. Bunun için optimize edilmemiş bir cihazda güç emici olma eğiliminde olduğu için telefonun harika olmadığını görüyorum. Garmin (ve diğerleri), rotalarda harcanan zamanı izlemek ve çevrimiçi bir arayüzde düzgün grafikler sağlamak için özellikle koşucuları ve bisikletçileri hedefleyen GPS cihazlarını yapar. Kendime özel bir GPS cihazı kullanmıyorum, ancak bazı arkadaşlarım facebook'ta rota paylaşmak için kullanıyor.
Jonathan

1
İşte Garmin cihazının ürettiklerine bir örnek . Grafiklerle ilgili sorun, zaten çok önceden işlenmiş, yumuşatılmış vb. Ama özel bir cihaz olarak işini görkemli bir şekilde yapıyor, onsuz koşmayı veya bisiklete binmeyi hayal edemiyorum.
mpiktas

+1 Kırmızı ışıklara çarpmaktan çok fazla çarpıklık olmadığına dikkat edin (zamanlanmış olmadıkları sürece): toplu olarak, zaman dağılımına genellikle sadece Gauss gürültüsü eklerler. (Varyansını hesaplamak, bir sonraki tepede yapabileceğiniz başka bir zihinsel egzersizdir.) Uygulamada, çarpıklık, tüm sürüşü kontrol eden birkaç önemli faktörde Gauss dışı varyasyondan kaynaklanır: hava durumu, nasıl hissettiğiniz, kiminle olduğunuzu yeniden sürme ve ara sıra kaza / servis yolu / trafik sıkışıklığı vs.
whuber

Şimdi biraz daha düşündüğüme göre, çok önemli bir faktör de günün zamanı. Trafik ışıkları yoğun trafik saatlerinde çok farklı hareket eder - yüksek trafikli yol için çok daha uzun yeşillikler. Yoğun olmayan zamanlarda, ışıklar hızlı bir şekilde dönme eğilimi gösterir, yüksek trafikli yol için varsayılan olarak yeşile döner, ancak geçiş düğmesine bastığımda veya bir araba sensörü etkinleştirdiğinde hızla değişir.
Jonathan

5

İki veri kümesinin X ve Y. Her popülasyondan bir kişiyi rastgele örnekleyerek sizex,y. Eğer '1' kaydedinx>yve 0 ise. Bunu birçok kez tekrarlayın (diyelim ki 10000) ve bu göstergelerin ortalaması size bir tahmin verecektir.P(Xi>Yj) where i,j are randomly selected subjects from the two populations, respectively. In R, the code would go something like:

#X, Y are the two data sets
ii = rep(0,10000)
for(k in 1:10000)
{
   x1 = sample(X,1)
   y1 = sample(Y,1)
   ii[k] = (x1>y1) 
}

# this is an estimate of P(X>Y)
mean(ii)

This is a good answer, but you could simplify it by removing the for loop: let x1 = sample(X, 10000, replace = TRUE) and y1 = sample(Y, 10000, replace = TRUE) and then calculate mean(x1 > y1) along with mean(x1 == y1) - to get a sense of the # of times the values are equal.
Iterator

Thanks. I knew the loop was unnecessary but I wanted the logic underlying the approach to be abundantly clear. Your code would certainly produce the same results.
Macro
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.