Tính phần trăm phân phối bình thường


9

Xem trang Wikipedia này:

http://en.wikipedia.org/wiki/Binomial_proportion_confidence_interval#Agresti-Coull_Interval

Để có được khoảng thời gian Agresti-Coull, người ta cần tính một tỷ lệ phần trăm của phân phối bình thường, được gọi là . Làm thế nào để tôi tính phần trăm tha? Có một chức năng làm sẵn nào thực hiện điều này trong Wolfram Mathematica và / hoặc Python / NumPy / SciPy không?z


1
Biểu thức tích phân trong "cdf bình thường tôi nhận được chính xác từ Wiki" không may bị tắt bởi hệ số . Không có công thức chính xác nào cho cdf bình thường hoặc nghịch đảo của nó bằng cách sử dụng một số thuật ngữ hữu hạn liên quan đến các hàm tiêu chuẩn ( v.v.) nhưng cả cdf bình thường và nghịch đảo của nó đã được nghiên cứu rất nhiều và gần đúng công thức cho cả hai được lập trình thành nhiều máy tính, bảng tính, chưa kể các gói thống kê. Tôi không quen thuộc với R nhưng tôi sẽ rất ngạc nhiên nếu nó không có những gì bạn đang tìm kiếm. exp,log,sincos1/πexp,log,sincos
Dilip Sarwate

@DilipSarwate, nó đã được sửa! Tôi đang làm điều này bằng cách sử dụng thông tin ngược, cũng "không được phép" sử dụng quá nhiều tích hợp. Đó là vì mục đích học tập mà tôi cho là.
dùng1061210

1
@Dilip: Không chỉ không có công thức chính xác được biết đến, tốt hơn nữa, người ta biết rằng không có công thức như vậy có thể tồn tại!
Đức hồng y

1
Phương pháp Box-Muller tạo ra các mẫu từ phân phối chung của các biến ngẫu nhiên tiêu chuẩn thông thường độc lập. Vì vậy, biểu đồ của các giá trị được tạo sẽ giống với phân phối chuẩn thông thường. Nhưng phương thức Box-Muller không phải là phương pháp tính toán các giá trị của ngoại trừ tình cờ như trong "Tôi đã tạo ra mẫu chuẩn thông thường trong đó có giá trị hoặc ít hơn, và vì vậy , và .10 4 8401 1 Φ ( 1 ) 0,8401 Φ - 1 ( 0,8401 ) 1Φ(x)10484011Φ(1)0.8401Φ1(0.8401)1
Dilip Sarwate

1
Tôi chỉ chọn làm ví dụ về các loại số bạn có thể mong đợi. và vì vậy nếu bạn tạo ra mẫu của một phân phối chuẩn chuẩn, bạn nên mong đợi gần tới của mẫu có giá trị . Bạn đang thực hiện chính xác phương pháp Box-Muller, nhưng không hiểu kết quả mà bạn đang nhận được và không liên quan đến cdf, v.v.Φ ( 1 ) = 0,8413 ... 10 4 8413 10000 18401Φ(1)=0.84131048413100001
Dilip Sarwate

Câu trả lời:


3

Đối với Mathicala $VersionNumber > 5 bạn có thể sử dụng

Quantile[NormalDistribution[μ, σ], 100 q]

cho qphần trăm -th.

Nếu không, bạn phải tải gói Thống kê thích hợp trước.


(Tôi có phiên bản 7.) Tôi không gặp vấn đề gì khi tải gói Thống kê. Nhưng chức năng trong đó gọi là gì? Bởi vì tôi có ấn tượng rằng Quantiledòng này sẽ thực hiện tính toán bằng tay thay vì sử dụng công thức.
Ram Rachum

Đánh giá nó với các thông số mang tính biểu tượng (tức là làm giá trị không assign để mu, sigmaq); bạn sẽ nhận được một biểu thức liên quan đến hàm lỗi nghịch đảo.
JM không phải là một nhà thống kê

16

Trang của John Cook, Phân phối trong Scipy , là một tài liệu tham khảo tốt cho loại công cụ này:

In [15]: import scipy.stats

In [16]: scipy.stats.norm.ppf(0.975)
Out[16]: 1.959963984540054

4

Chà, bạn không hỏi về R, nhưng trong R bạn làm điều đó bằng cách sử dụng? Qnorm

(Đây thực sự là định lượng, không phải là phần trăm, hay tôi tin vậy)

> qnorm(.5)
[1] 0
> qnorm(.95)
[1] 1.644854

1
Định lượng so với phân vị (chỉ đơn thuần là vấn đề thuật ngữ), j.mp/dsYz9z .
chl

1
Trong khi chúng tôi đang ở, trong các TCTD được điều chỉnh R Wald (ví dụ: Agresti-Coull) có sẵn trong PropCIsgói. Phương pháp của Wilson là mặc định trong Hmisc::binconf(như được đề xuất bởi Agresti và Coull).
chl

2

Trong Python, bạn có thể sử dụng mô-đun thống kê từ gói scipy (tìm kiếm cdf(), như trong ví dụ sau ).

(Có vẻ như gói siêu việt cũng bao gồm các phân phối tích lũy thông thường).


0

Bạn có thể sử dụng hàm erf nghịch đảo , có sẵn trong MatLab và Mathicala, chẳng hạn.

Đối với CDF bình thường, bắt đầu từ

y=Φ(x)=12[1+erf(x2)]

Chúng tôi nhận được

x=2 erf1(2y1)

Đối với CDF log-normal, bắt đầu từ

y= =Fx(x;μ,σ)= =12erfc(-đăng nhậpx-μσ2)

Chúng tôi nhận được

-đăng nhập(x)= =μ+σ2 erfc-1(2y)

2
Đây không phải là một nhận xét nhiều hơn một câu trả lời?
Macro

Ý tưởng của tôi là nếu bạn có nghịch đảo cho các hàm erf và erfc, thì vấn đề đã được giải quyết. MatLab, ví dụ, có các chức năng được lập trình sẵn như vậy.
Jean-Victor Côté

@ Jean-VictorCôté Xin vui lòng, phát triển ý tưởng của bạn trong câu trả lời của bạn. Mặt khác, nó chỉ trông giống như một bình luận như được đề xuất ở trên.
chl

đăng nhập(x)x
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.