R'de pozitif kararlı dağılım


9

Pozitif kararlı dağılımlar dört parametre ile tanımlanır: de eğri parametresi ölçek parametresi , konum parametresi ve benzeri -called dizin parametresi . sıfır olduğunda dağılım etrafında simetriktir , pozitif (sırasıyla negatif) olduğunda dağılım sağa (soldan sağa) eğrilir Kararlı dağılımlar, azaldığında yağ kuyruklarına izin verir .β[-1,1]σ>0μ(-,)α(0,2]βμα

Tüm kesinlikle daha az bir ve daha dağıtım kısıtlar destek .αβ=1(μ,)

Yoğunluk işlevi, parametreler için belirli değer kombinasyonları için yalnızca kapalı biçimli bir ifadeye sahiptir. Tüm , , ve da (formül (4.4) 'dir burada ):μ=0α<1β=1σ=α

f(y)=-1πyΣk=1Γ(kα+1)k!(-y-α)kgünah(αkπ)

Sonsuz ortalama ve varyansa sahiptir.

Soru

R'de bu yoğunluğu kullanmak istiyorum.

> alpha <- ...
> dstable(y, alpha=alpha, beta=1, gamma=alpha, delta=0, pm=1)

burada dstable işlevi fBasics paketi ile birlikte gelir.

Bunun R cinsinden yoğunluğu hesaplamanın doğru yolu olduğunu doğrulayabilir misiniz?

Şimdiden teşekkür ederim!

DÜZENLE

Şüpheli olmamın bir nedeni, çıktıda delta değerinin girdideki değerden farklı olmasıdır. Misal:

> library(fBasics)
> alpha <- 0.4
> dstable(4, alpha=alpha, beta=1, gamma=alpha, delta=0, pm=1)
[1] 0.02700602
attr(,"control")
   dist alpha beta gamma    delta pm
stable   0.4    1   0.4 0.290617  1

Yanıtlar:


6

Kısa cevap, iyi olması, ancak yanlış olmasıdır. Formülünüz tarafından R'de verilen pozitif kararlı dağılımı elde etmek için δγ

γ=|1-bentaba rengi(πα/2)|-1/α.

Verdiğin formüle ilişkin en eski örnek (Feller, 1971) idi, ama bu kitabı sadece fiziksel formda buldum. Ancak (Hougaard, 1986) Laplace dönüşümü Gönderen kılavuzda ( kullanılan ), parameterization (Samorodnitsky ve Taqqu, 1994), kimin çevrimiçi üreme beni eluded başka bir kaynak değil. Ancak (Weron, 2001) Samorodnitsky ve Taqqu'in için parametreleştirilmesinde karakteristik işlevi vermektedir.

L(s)=E[tecrübe(-sX)]=tecrübe(-sα).
stablediststabledistfBasicspm=1α1
φ(t)=E[exp(itX)]=exp[iδtγα|t|α(1iβsign(t)tanπα2)].
Kullandığımız gösterim ile Weron'un kâğıdından madeni paraya bazı parametreleri yeniden adlandırdım. için ve için kullanır . Her durumda, ve , μδσγβ=1δ=0
φ(t)=exp[γα|t|α(1isign(t)tanπα2)].

Not bu için ve . Resmi olarak , yani içerisinde elde ederiz Dikkat edilmesi gereken ilginç bir nokta, karşılık gelen da , bu nedenle veya(1itan(πα/2))/|1-bentaba rengi(πα/2)|=tecrübe(-benπα/2)α(0,1)benα=tecrübe(benπα/2)L(s)=φ(bens)γ=|1-bentaba rengi(πα/2)|-1/αφ(t)

φ(bens)=tecrübe(-sα)=L(s).
γα=1/21/2γ=αγ=1-αaslında kötü bir yaklaşım değildir, 1/2 için tam olarak doğru sonuç verirsiniz .α=1/2

Doğruluğu kontrol etmek için R'de bir örnek:

library(stabledist)

# Series representation of the density
PSf <- function(x, alpha, K) {
  k <- 1:K
  return(
    -1 / (pi * x) * sum(
      gamma(k * alpha + 1) / factorial(k) * 
        (-x ^ (-alpha)) ^ k * sin(alpha * k * pi)
    )
  )
}

# Derived expression for gamma
g <- function(a) {
  iu <- complex(real=0, imaginary=1)
  return(abs(1 - iu * tan(pi * a / 2)) ^ (-1 / a))
}

x=(1:100)/100
plot(0, xlim=c(0, 1), ylim=c(0, 2), pch='', 
     xlab='x', ylab='f(x)', main="Density Comparison")
legend('topright', legend=c('Series', 'gamma=g(alpha)'),
       lty=c(1, 2), col=c('gray', 'black'),
       lwd=c(5, 2))
text(x=c(0.1, 0.25, 0.7), y=c(1.4, 1.1, 0.7), 
     labels=c(expression(paste(alpha, " = 0.4")),
              expression(paste(alpha, " = 0.5")),
              expression(paste(alpha, " = 0.6"))))

for(a in seq(0.4, 0.6, by=0.1)) {
  y <- vapply(x, PSf, FUN.VALUE=1, alpha=a, K=100)
  lines(x, y, col="gray", lwd=5, lty=1)
  lines(x, dstable(x, alpha=a, beta=1, gamma=g(a), delta=0, pm=1), 
        col="black", lwd=2, lty=2)
}

Grafik çıktısı

  1. Feller, W. (1971). Olasılık Teorisine Giriş ve Uygulamaları , 2 , 2. baskı. New York: Wiley.
  2. Hougaard, P. (1986). Kararlı Dağılımlardan Kaynaklanan Heterojen Popülasyonlar için Yaşam Modelleri , Biometrika 73 , 387-396.
  3. Samorodnitsky, G., Taqqu, MS (1994). Kararlı Gauss Olmayan Rasgele Süreçler , Chapman & Hall, New York, 1994.
  4. Weron, R. (2001). Levy-kararlı dağılımları yeniden ziyaret edildi: kuyruk indeksi> 2, Levy-kararlı rejimi dışlamaz , Uluslararası Modern Fizik Dergisi C, 2001, 12 (2), 209-223.

1
Zevkle. Olumlu istikrarlı parametreleştirmeler konusu bu yılın başlarında benim için çok fazla baş ağrısına neden oldu (gerçekten bir karmaşa), bu yüzden bulduğum şeyi gönderiyorum. Bu özel form, hayatta kalma analizinde kullanışlıdır, çünkü Laplacian'ın formu, pozitif kararlı bir dağılımı takiben zayıf bir terim olduğunda orantılı tehlike modellerinde koşullu ve marjinal regresyon parametreleri arasında basit bir ilişkiye izin verir (bkz. Hougaard'ın makalesi).
P Schnell

6

Ben ne olduğunu düşünüyorum deltagirişte bir deltakayma tarif ederken, bir iç konum değeri rapor olabilir . [ gammaNe zaman benzer bir sorun var gibi görünüyor pm=2.] Yani eğer 2'ye geçmeyi denerseniz

> dstable(4, alpha=0.4, beta=1, gamma=0.4, delta=2, pm=1)
[1] 0.06569375
attr(,"control")
   dist alpha beta gamma    delta pm
 stable   0.4    1   0.4 2.290617  1

konum değerine 2 eklersiniz.

İle beta=1ve pm=1dağıtım alt sınırı 0'da olan pozitif bir rastgele değişkeniniz var.

> min(rstable(100000, alpha=0.4, beta=1, gamma=0.4, delta=0, pm=1))
[1] 0.002666507

Vardiya 2 ve alt sınır aynı miktarda artar

> min(rstable(100000, alpha=0.4, beta=1, gamma=0.4, delta=2, pm=1))
[1] 2.003286

Ancak deltagirdinin kaydırma veya alt sınırdan ziyade dahili konum değeri olmasını istiyorsanız, parametreler için farklı bir özellik kullanmanız gerekir. Örneğin, aşağıdakileri denerseniz ( pm=3ve denerken delta=0ve delta=0.290617daha önce bulduğunuzda), aynısını içeri deltave dışarı alırsınız . İle pm=3ve delta=0.290617daha önce bulduğunuz 0.02700602 ile aynı yoğunluğu ve 0'da bir alt sınır elde edersiniz. İle pm=3ve delta=0negatif bir alt sınır elde edersiniz (aslında -0.290617).

> dstable(4, alpha=0.4, beta=1, gamma=0.4, delta=0, pm=3)
[1] 0.02464434
attr(,"control")
   dist alpha beta gamma delta pm
 stable   0.4    1   0.4     0  3
> dstable(4, alpha=0.4, beta=1, gamma=0.4, delta=0.290617, pm=3)
[1] 0.02700602
attr(,"control")
   dist alpha beta gamma    delta pm
 stable   0.4    1   0.4 0.290617  3
> min(rstable(100000, alpha=0.4, beta=1, gamma=0.4, delta=0, pm=3))
[1] -0.2876658
> min(rstable(100000, alpha=0.4, beta=1, gamma=0.4, delta=0.290617, pm=3))
[1] 0.004303485

deltaÇıktıda görmezden gelmeyi daha kolay bulabilirsiniz ve girişte araçları beta=1kullanmaya devam ettiğiniz sürece , dağıtımda alt sınır bulunur, bu da 0 olmak istediğiniz gibi görünür.pm=1delta


5

Ayrıca dikkat: Martin Maechler, kararlı dağıtılmış kodunu yeniden düzenledi ve bazı iyileştirmeler ekledi.

Yeni paket stabledisti fBasics tarafından da kullanılacak, bu yüzden buna da bir göz atmak isteyebilirsiniz.

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.