Làm thế nào để lấy mẫu từ phân phối Cantor?


19

Điều gì sẽ là cách tốt nhất để lấy mẫu từ phân phối Cantor ? Nó chỉ có cdf và chúng tôi không thể đảo ngược nó.


4
Trên thực tế, có người đã hỏi nó về Toán học: math.stackexchange.com/questions/1115907/ trên
RUser4512

Dưới đây là một số câu hỏi tiếp theo thú vị: độ lệch chuẩn là gì? Hàm tạo mô men là gì? Làm thế nào để họ so sánh với các đối tác của họ cho phân phối Đồng phục ? :-)(0,1)
whuber

5
Tôi thích vòng lặp vô hạn mà các bạn đã tạo ra bằng cách tham khảo bài đăng math.stackexchange, liên kết lại ở đây: p
Tasos Papastylianou

Câu trả lời:


23

Dễ dàng: lấy mẫu từ phân phối Đồng nhất và mã hóa lại từ nhị phân sang ternary, diễn giải mỗi "1" là "2". (Đây là cách tiếp cận biến đổi xác suất ngược: nó thực sự đảo ngược CDF!)(0,1)

Nhân vật

Đây là một Rtriển khai, được viết theo cách phải chuyển dễ dàng đến hầu hết mọi môi trường điện toán.

binary.to.ternary <- function(x) {
  y <- 0
  x <- round(2^52 * x)
  for (i in 1:52) {
    y <- y + 2*(x %% 2)
    y <- y/3
    x <- floor(x/2)
  }
  y
}

n <- 1000
x <- runif(n)
y <- binary.to.ternary(x)
plot(ecdf(y), pch=".")

3
Đầu năm nay, tôi bắt đầu một việc thực hiện đầy đủ trong hơi github.com/Henrygb/CantorDist.R với các chức năng rCantor(), qCantor(), pCantor()và một ít ý nghĩadCantor()
Henry

1
@Henry Điều gì sẽ dcantorthực hiện? Như Tim lưu ý, phân phối này không có mật độ. Nó cũng không có bất kỳ nguyên tử rời rạc nào. Đó là ví dụ điển hình của phân phối liên tục nhưng không hoàn toàn liên tục. (Tôi thích việc triển khai qcantor, BTW - có thể nhanh chóng nhờ vào việc khai thác phép nhân ma trận.)
whuber

1
Chúng ta phải nhớ rằng chúng ta chỉ giải quyết một xấp xỉ hữu hạn cho phân phối thực tế. Giả sử chúng ta có 10 số chính xác có ba chữ số (trong thực tế, chúng sẽ dài hơn) và chúng ta đã tạo 0,0222020002 để "đại diện" cho một biến có các chữ số mở rộng hơn nữa. Mặc dù cùng một nhận xét áp dụng cho bất kỳ rv có giá trị thực nào với rv liên tục, tất cả các giá trị "được biểu diễn", xấp xỉ độ dài hữu hạn có thể là "trong tập hợp". Trong phân phối Cantor thực tế, gần như tất cả các "phần tiếp theo" của chuỗi mười chữ số đó không có trong tập hợp. ... ctd
Glen_b -Reinstate Monica

1
@whuber Tôi thừa nhận rõ ràng rằng mọi phương pháp tạo số ngẫu nhiên là độ chính xác hữu hạn trong câu thứ hai của tôi. Rằng bạn đã chọn lặp lại nó và sự nhấn mạnh mà bạn đưa ra cho thấy bạn đã bỏ lỡ điểm thực tế của tôi ở đó; khi tôi biểu thị một biến thiên liên tục đến độ chính xác hữu hạn, các giá trị thực mà phép tính gần đúng hữu hạn đó có thể biểu thị là "trong tập hợp" mà chúng ta muốn tạo từ đó. Khi tôi biểu diễn một biến như thế này để có độ chính xác hữu hạn, các giá trị thực như một xấp xỉ hữu hạn có thể đại diện gần như không có trong tập hợp. Đó là một trường hợp khác. ... ctd
Glen_b -Reinstate Monica

1
Ctd ... không có chỉ trích về bài viết của bạn được ngụ ý; đó là một điểm mà độc giả có thể bỏ qua và có thể muốn xem xét, đặc biệt nếu họ đang cố gắng suy ra các thuộc tính của Cantor được đặt bằng cách mô phỏng từ nó.
Glen_b -Reinstate Monica
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.