miktarları için kapalı form ifadesi


16

İki rastgele değişkenim var, αiiid U(0,1),i=1,2 buradaU(0,1) eşit 0-1 dağılımıdır.

Sonra, bunlar bir süreç verir, örneğin:

P(x)=α1sin(x)+α2cos(x),x(0,2π)

Şimdi, bir kapalı form ekspresyon olup olmadığını merak F1(P(x);0.75) teorik yüzde 75 quantile P(x) , belirli bir için x(0,2π) herhalde -I bir bilgisayar ve birçok gerçekleştirmeleri ile yapabilirsiniz P(x), ama kapalı formu tercih ediyorum--.


1
Sanırım α 1 ve α 2'nin istatistiksel olarak bağımsız olduğunu varsaymak istiyorsunuz . 12
Michael R.Chernick

@Prorastinator: Bunu bir cevap olarak yazabilir misiniz?
user603

4
(+1) "Süreç" bakış açısı burada kırmızı bir ringa balığı gibi görünüyor. P ( x ) = β 1 günah x + β 2 cos x + 1 yazma Burada β i = α i - 1 / 2 ~ U ( - 1 / 2 , 1 / 2 ) . Daha sonra, her sabit x için , ilk iki terim birtrapezoidalyoğunluk fonksiyonunubelirlerve son terim sadece ortalama bir ofsettir. Yamuk yoğunluğunun belirlenmesi için sadece x [ 0 , π / 2 ) dikkate almamız gerekir.
P(x)=β1sinx+β2cosx+12(sinx+cosx),
βi=αi1/2U(1/2,1/2)xx[0,π/2)
kardinal

2
Sayısal olarak bu kullanarak basitçe yapılabilir quant = function(n,p,x) return( quantile(runif(n)*sin(x)+runif(n)*cos(x),p) )ve quant(100000,0.75,1).

Yanıtlar:


19

Bu sorun hızlı bir şekilde yamuk dağılımının kuantilini bulan birime indirgenebilir .

Süreci P ( x ) = U 11 olarak yeniden yazalım Burada U 1 ve u 2 iid U ( - 1 , 1 ) ; rastgele değişkenler simetriyle, aynı sahipmarjinalbir süreç olarak dağıtım ¯ p ( x ) = u 1| 1

P(x)=U112sinx+U212cosx+12(sinx+cosx),
U1U2U(1,1) İlk iki terim simetrik biryamuk yoğunluğunubelirler,çünkü bu iki ortalama sıfır tekdüze rasgele değişkenin (genel olarak farklı yarım genişliklerle) toplamıdır. Son terim sadece bu yoğunluğun bir çevirisine yol açar ve kantil bu çeviriye göre eşdeğerdir (yani, kaydırılan dağılımın kantili ortalanmış dağılımın kaydırılmış kantilidir).
P¯(x)=U1|12sinx|+U2|12cosx|+12(sinx+cosx).

Trapezoidal dağılımın kantilleri

Let x 1 ve X, 2 bağımsız U ( - bir , bir ) ve U ( - b , b ) dağılımlar. O genelliği kaybetmeden varsayalım bir b . Daha sonra, yoğunluğu Y yoğunluklarını evriştirerek oluşturulur X 1 ve X 2 . Bu, köşeleri olan bir yamuk olarak kolayca görülür ( - aY=X1+X2X1X2U(a,a)U(b,b)abYX1X2 , ( - bir + b , 1 / 2 a ) , ( a - b , 1 / 2 a ) ve ( a + b , 0 ) .(ab,0)(a+b,1/2a)(ab,1/2a)(a+b,0)

Dağılım miktarsal herhangi biri için, p < 1 / 2 , bu şekilde, bir q ( p ) : = q ( sYp<1/2 Simetri tarafından içinp>1/2, elimizdekiq(p)=-q(1-p).

q(p):=q(p;a,b)={8abp(a+b),p<b/2a(2p1)a,b/2ap1/2.
p>1/2q(p)=q(1p)

Eldeki davaya geri dön

Yukarıdakiler zaten kapalı formlu bir ifade vermek için yeterlidir. Tek ihtiyacımız olan iki davaya girmek ve | günah x | < | cos x | rolünü oynar belirlemek için 2 a ait bir rol oynar ve 2 b , yukarıda. (Buradaki 2 faktörü, ¯ P ( x ) tanımındaki ikiye bölünmeleri telafi etmektir .)|sinx||cosx||sinx|<|cosx|2a2bP¯(x)

p<1/2|sinx||cosx|a=|sinx|/2b=|cosx|/2

qx(p)=q(p;a,b)+12(sinx+cosx),
|sinx|<|cosx|p1/2
qx(p)=q(1p;a,b)+12(sinx+cosx),

Quantiles

P(x)x02πypP(x)

X'in bir fonksiyonu olarak Quantiles

p=1/2p=0p=1p=1/4p=3/4

Kuantil çizim

Bazı örnek Rkodlar

qprocP(x)xqtrap

# Pointwise quantiles of a random process: 
# P(x) = a_1 sin(x) + a_2 cos(x)

# Trapezoidal distribution quantile
# Assumes X = U + V where U~Uni(-a,a), V~Uni(-b,b) and a >= b
qtrap <- function(p, a, b)
{
    if( a < b) stop("I need a >= b.")
    s <- 2*(p<=1/2) - 1
    p <- ifelse(p<= 1/2, p, 1-p)
    s * ifelse( p < b/2/a, sqrt(8*a*b*p)-a-b, (2*p-1)*a )
}

# Now, here is the process's quantile function.
qproc <- function(p, x)
{
    s <- abs(sin(x))
    c <- abs(cos(x))
    a <- ifelse(s>c, s, c)
    b <- ifelse(s<c, s, c)
    qtrap(p,a/2, b/2) + 0.5*(sin(x)+cos(x))
} 

Aşağıda ilgili çıktıya sahip bir test bulunmaktadır.

# Test case
set.seed(17)
n <- 1e4
x <- -pi/8
r <- runif(n) * sin(x) + runif(n) * cos(x)

# Sample quantiles, then actual.
> round(quantile(r,(0:10)/10),3)
    0%    10%    20%    30%    40%    50%    60%    70%    80%    90%   100%
-0.380 -0.111 -0.002  0.093  0.186  0.275  0.365  0.453  0.550  0.659  0.917
> round(qproc((0:10)/10, x),3)
 [1] -0.383 -0.117 -0.007  0.086  0.178  0.271  0.363  0.455  0.548
[10]  0.658  0.924

3
Keşke daha fazla oy verebilseydim. Bu ise uzmanlık gücü: i love this website sebep. Yamuk dağılımını bilmiyordum. Bunu çözmem biraz zaman alacaktı. Yoksa Üniformalar yerine Gauss'luları kullanmak için yerleşmek zorunda kalırdım. Her neyse, harika.
user603
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.