Tôi đã trang bị một mô hình logic bất thường bằng R với một bộ dữ liệu. Các tham số kết quả là:
meanlog = 4.2991610
sdlog = 0.5511349
Tôi muốn chuyển mô hình này sang Scipy, điều mà tôi chưa từng sử dụng trước đây. Sử dụng Scipy, tôi có thể có được hình dạng và tỷ lệ 1 và 3.1626716539437488e + 90 - những con số rất khác nhau. Tôi cũng đã thử sử dụng exp của meanlog và sdlog nhưng tiếp tục nhận được biểu đồ kỳ quái.
Tôi đã đọc mọi tài liệu tôi có thể trên scipy và vẫn còn bối rối về ý nghĩa của các tham số hình dạng và tỷ lệ trong trường hợp này. Nó sẽ chỉ có ý nghĩa để mã chức năng bản thân mình? Điều đó có vẻ dễ bị lỗi, vì tôi là người mới.
SCIPY Lognatural (BLUE) so với R Lognatural (RED):
Bất kỳ suy nghĩ về hướng nào để có được? Nhân tiện, dữ liệu rất phù hợp với mô hình R, vì vậy nếu nó trông giống như một cái gì đó khác trong Python, hãy thoải mái chia sẻ.
Cảm ơn bạn!
Cập nhật:
Tôi đang chạy Scipy 0.11
Đây là một tập hợp con của dữ liệu. Mẫu thực tế là 38k +, với giá trị trung bình là 81,53627:
Tập hợp con:
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.mean (x)
99.071428571428569
Cách khác:
Tôi đang làm việc trên một chức năng để chụp pdf:
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
Tuy nhiên, điều này cho tôi những con số như sau (tôi đã thử một vài trường hợp tôi nhận được ý nghĩa của sdlog và meanlog lẫn lộn):
>>> 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
Có suy nghĩ gì không?
Cập nhật:
chạy lại với đề xuất "UPQuark's":
hình dạng, loc, scale (1.0, 50.03445923295007, 19.074457156766517)
Hình dạng của biểu đồ rất giống nhau, tuy nhiên, với đỉnh xảy ra vào khoảng 21.