Bir veri kümesi ile R kullanarak lognormal bir model taktım. Ortaya çıkan parametreler:
meanlog = 4.2991610
sdlog = 0.5511349
Bu modeli daha önce hiç kullanmadığım Scipy'ye aktarmak istiyorum. Scipy kullanarak, 1 ve 3.1626716539637488e + 90 - çok farklı sayıların bir şekil ve ölçeğini elde edebildim. Ayrıca meanlog ve sdlog exp kullanmaya çalıştım ama tuhaf grafik almaya devam.
Scipy'de yapabileceğim her dokümanı okudum ve hala bu örnekte şekil ve ölçek parametrelerinin ne anlama geldiği konusunda kafam karıştı. Fonksiyonu kendim kodlamak mantıklı olur mu? Scipy için yeni olduğum için bu hatalara eğilimli görünüyor.
SCIPY Lognormal (MAVİ) ve R Lognormal (KIRMIZI):
Hangi yöne gideceğiniz konusunda düşünceleriniz var mı? Veriler R modeline çok iyi uyuyor, bu nedenle Python'da başka bir şeye benziyorsa paylaşmaktan çekinmeyin.
Teşekkür ederim!
Güncelleme:
Scipy 0.11 kullanıyorum
İşte verilerin bir alt kümesi. Gerçek örnek 38k +, ortalama 81.53627'dir:
subsetine:
x
[60, 170, 137, 138, 81, 140, 78, 46, 1, 168, 138, 148, 145, 35, 82, 126, 66, 147, 88, 106, 80, 54, 83, 13, 102, 54, 134, 34]
numpy. Ortalama (x)
99.071428571428569
Alternatif:
Ben pdf yakalamak için bir işlev üzerinde çalışıyorum:
def lognoral(x, mu, sigma):
a = 1 / (x * sigma * numpy.sqrt(2 * numpy.pi) )
b = - (numpy.log(x) - mu) ^ 2 / (2 * sigma ^ 2)
p = a * numpy.exp(b)
return p
Ancak, bu bana aşağıdaki numaraları vermek (sdlog ve meanlog karışık anlamını alıyorum durumunda birkaç denedim):
>>> lognormal(54,4.2991610, 0.5511349)
0.6994656085799437
>>> lognormal(54,numpy.exp(4.2991610), 0.5511349)
0.9846125119455129
>>> lognormal(54,numpy.exp(4.2991610), numpy.exp(0.5511349))
0.9302407837304372
Düşüncesi olan var mı?
Güncelleme:
"UPQuark's" önerisiyle tekrar yayınlamak:
şekil, loc, ölçek (1.0, 50.03445923295007, 19.074457156766517)
Bununla birlikte, grafiğin şekli çok benzer, tepe noktası 21 civarındadır.