Làm thế nào để tính thời gian trung bình tuân thủ ăn chay khi chúng ta chỉ có dữ liệu khảo sát về người ăn chay hiện tại?


16

Một mẫu dân số ngẫu nhiên đã được khảo sát. Họ được hỏi nếu họ ăn chay. Nếu họ trả lời có, họ cũng được yêu cầu xác định thời gian họ ăn chay mà không bị gián đoạn. Tôi muốn sử dụng dữ liệu này để tính thời gian tuân thủ ăn chay trung bình. Nói cách khác, khi ai đó ăn chay, tôi muốn biết trung bình họ ăn chay lâu. Hãy giả sử rằng:

  • Tất cả những người được hỏi đã trả lời đúng và chính xác
  • Thế giới ổn định: sự phổ biến của việc ăn chay không thay đổi, thời gian tuân thủ trung bình cũng không thay đổi.

Lý luận của tôi cho đến nay

Tôi thấy thật hữu ích khi phân tích một mô hình đồ chơi của thế giới, nơi vào đầu mỗi năm hai người trở thành người ăn chay. Mỗi lần, một trong số họ ăn chay trong 1 năm và một người khác trong 3 năm. Rõ ràng, thời gian tuân thủ trung bình trong thế giới này là (1 + 3) / 2 = 2 năm. Dưới đây là một biểu đồ minh họa ví dụ. Mỗi hình chữ nhật đại diện cho một thời kỳ ăn chay:

sự minh họa

Giả sử chúng ta thực hiện một cuộc khảo sát vào giữa năm 4 (đường màu đỏ). Chúng tôi nhận được các dữ liệu sau:

một cái bàn

Chúng tôi sẽ nhận được cùng một dữ liệu nếu chúng tôi thực hiện khảo sát vào bất kỳ năm nào, bắt đầu từ năm 3. Nếu chúng tôi chỉ lấy trung bình các câu trả lời chúng tôi nhận được:

(2 * 0,5 + 1,5 + 2,5) / 4 = 1,25

Chúng tôi đánh giá thấp bởi vì chúng tôi cho rằng tất cả mọi người đã ngừng ăn chay ngay sau khi khảo sát, điều này rõ ràng là không chính xác. Để có được ước tính gần với thời gian trung bình thực mà những người tham gia này vẫn ăn chay, chúng ta có thể giả sử rằng trung bình, họ đã báo cáo khoảng thời gian giữa chừng thời gian ăn chay của họ và nhân lên thời lượng báo cáo gấp đôi. từ dân số (như người tôi đang phân tích), tôi nghĩ đây là một giả định thực tế. Ít nhất là nó sẽ cho một giá trị mong đợi chính xác. Tuy nhiên, nếu nhân đôi là điều duy nhất chúng ta làm, chúng ta nhận được trung bình 2,5, đó là một sự đánh giá quá cao. Điều này là do người ăn chay càng lâu, anh ta càng có nhiều khả năng trong mẫu người ăn chay hiện tại.

Sau đó tôi nghĩ rằng xác suất có người trong mẫu người ăn chay hiện tại tỷ lệ thuận với thời gian ăn chay của họ. Để giải thích cho sự thiên vị này, tôi đã cố gắng phân chia số lượng người ăn chay hiện tại theo thời gian tuân thủ dự đoán của họ:

một bảng khác

Tuy nhiên, điều này cũng cho một mức trung bình không chính xác:

(2 * 1 + * 3 + ⅕ * 5) / (2 + +) = 4 / 2.533333 = 1.579 năm

Nó sẽ đưa ra ước tính chính xác nếu số lượng người ăn chay được chia cho thời gian tuân thủ chính xác của họ:

(1 + * (1 + 3 + 5)) / (1 + ⅓ * 3) = 2 năm

Nhưng nó không hoạt động nếu tôi sử dụng thời gian tuân thủ dự đoán và chúng là tất cả những gì tôi có trong thực tế. Tôi không biết những gì khác để thử. Tôi đã đọc một chút về phân tích sinh tồn nhưng tôi không chắc làm thế nào để áp dụng nó trong trường hợp này. Lý tưởng nhất, tôi cũng muốn có thể tính toán khoảng tin cậy 90%. Bất kỳ lời khuyên sẽ được đánh giá rất cao.

EDIT: Có thể là câu hỏi trên không có câu trả lời. Nhưng cũng có một nghiên cứu khác hỏi một mẫu người ngẫu nhiên rằng họ có / đang ăn chay không và họ đã ăn chay bao nhiêu lần trong quá khứ. Tôi cũng biết tuổi của mọi người trong cả nghiên cứu và một số thứ khác. Có lẽ thông tin này có thể được sử dụng kết hợp với khảo sát những người ăn chay hiện tại để có được ý nghĩa nào đó. Trong thực tế, nghiên cứu mà tôi nói đến chỉ là một phần của câu đố, nhưng là một phần rất quan trọng và tôi muốn nhận được nhiều hơn từ nó.


1
Đó không phải là một lựa chọn atm. Dữ liệu này chắc chắn cung cấp một số bằng chứng về thời gian tuân thủ, tôi chỉ không biết cách sử dụng nó.
Saulius imčikas

1
Ít nhất một trong những hình ảnh của bạn dường như đã biến mất (lỗi 403 khi tôi sử dụng URL).
barrycarter

2
@kjetilbhalvorsen Đối với vấn đề không thành vấn đề nếu người ăn chay tiếp tục ăn chay suốt đời. Đến một lúc nào đó, họ sẽ ngừng ăn chay, bằng cách ăn thịt hoặc chết.
Pere

4
@kjetil Nhận xét "người ăn chay thực sự" của bạn nghe có vẻ giống như một người Scotland thực sự . Định nghĩa thông thường của người ăn chay không nói gì về những gì có thể xảy ra trong tương lai, cũng như lý do tại sao một người ăn chay, nhưng chỉ về hành vi của họ tại thời điểm thuộc tính đang được xem xét. Nếu bây giờ ai đó ăn chay, bây giờ họ ăn chay, vì bất kỳ lý do gì họ tình cờ là một. Tôi không nghĩ cảm xúc cá nhân của chúng tôi về ý tưởng ăn thịt hoặc lý do tại sao chúng tôi có thể cảm thấy là chúng tôi làm là về chủ đề ở đây; họ thuộc về một nơi khác.
Glen_b -Reinstate Monica

2
Vì những người ăn chay lâu hơn có nhiều khả năng được chọn xuất hiện trong mẫu của bạn, điều này có nghĩa là hàm mật độ xác suất của dữ liệu mẫu của bạn tỷ lệ với một trừ đi hàm phân phối tích lũy của độ dài tuân thủ. Để lấy ví dụ từ ví dụ của bạn, phân phối độ dài là [0, 0,5, 0, 0,5] (50% cuối cùng trong 1 năm, 50% trong 3 năm), cho CDF là [0, 0,5, 0,5, 1 ], với một điểm trừ là [1, 0,5, 0,5, 0] tỷ lệ thuận với số lượng [2, 1, 1, 0] của mẫu của bạn.
PhiNotPi

Câu trả lời:


10

Đặt biểu thị pdf có độ dài tuân thủ của việc ăn chay trong dân số. Mục tiêu của chúng tôi là ước tính .fX(x)XEX=0xfX(x)dx

Giả sử rằng xác suất được đưa vào khảo sát (sự kiện ) tỷ lệ với , pdf có độ dài tuân thủ trong số những người được đưa vào khảo sát là Tại thời điểm được đưa vào khảo sát, chỉ một thời gian trôi qua. Có điều kiện trên (và ), thời gian ăn chay được báo cáo là đồng nhất với pdf Do đó, sử dụng định luật tổng xác suất, phân phối tổng thể thời gian trôi qua như ăn chay trong số những người được đưa vào khảo sát trở thành SXX

fX|S(x)=xfX(x)xfX(x)dx=xfX(x)EX.
ZXS
fZ|X=x(z)=1x,0<z<x.
Z
fZ(z)= =zfZ|X= =x(z)fX|S(x)dx= =z1xxfX(x)EXdx= =1-FX(z)EX,
nơi là lũy của . Vì là biến dương, và do đó .FX(z)XXFX(0)=P(X0)=0fZ(0)=1/EX

Điều này cho thấy ước tính bằng cách ước tính đầu tiên không tham số từ dữ liệu quan sát . Một tùy chọn là ước tính mật độ hạt nhân, sử dụng phương pháp phản xạ của Silverman quanh do miền của có giới hạn thấp hơn tại . Phương pháp này được áp dụng cho dữ liệu mô phỏng được hiển thị dưới dạng đường cong màu đỏ trong hình bên dưới. Có được ước tính của tại , ước tính sau đó được đưa ra bởi . EXfZ(z)z1,z2,,znz=0fZ(z)z= =0f^Z(0)fZ(z)z= =0EXEX^= =1/f^Z(0)

nhập mô tả hình ảnh ở đây

Phương pháp không tham số này không lý tưởng tuy nhiên vì nó không khai thác thực tế rằng là một hàm không tăng. Ngoài ra, nếu , có thể bị đánh giá thấp nghiêm trọng và đánh giá quá cao. Việc tìm kiếm ước tính trong các tình huống như vậy mà không đưa ra nhiều giả định có vẻ khó khăn, về cơ bản vì thời gian tuân thủ ngắn trong tình huống này hầu như không hiển thị trong dữ liệu quan sát do kết quả của việc lấy mẫu sai lệch.f X ( 0 ) = F X ( 0 ) > 0 f Z ( 0 ) E X E XfZ(z)fX(0)= =FX'(0)>0fZ(0)EXEX

Ngoài ra, người ta có thể đưa ra một số giả định phân phối về và phù hợp với mô hình tham số bằng cách tối đa hóa khả năng bằng số (đường cong màu xanh trong hình trên).L ( θ ) = n i = 1 1 - F X ( z i ; θ )fX(x)

L(θ)= =ΠTôi= =1n1-FX(zTôi;θ)EX(θ)

Mã R mô phỏng dữ liệu và thực hiện cả hai phương pháp:

# Simulate lognormal duration length in population
set.seed(1)
n <- 1e+4
x <- rlnorm(n,mean=2,sd=.2)
# Biased sampling
x.given.S <- sample(x, size=n/10, prob=x, replace=TRUE)
# Duration at time of sampling
z <- runif(length(x.given.S),min=0, max=x.given.S)
hist(z,prob=TRUE,main="")

# Compute kernel density estimate with reflection around z=0
to <- max(x) + 3
fhat <- density(z,from = -to, to=to)
m <- length(fhat$y)
fhat$y <- fhat$y[(m/2+1):m] + fhat$y[(m/2):1]
fhat$x <- fhat$x[(m/2+1):m]
lines(fhat,col="red")
# Estimate of EX
1/fhat$y[1]
# True value (mean of above lognormal)
exp(2+.2^2/2)

# Maximum likelihood
nll <- function(theta, z) {
  - sum(plnorm(z, theta[1], theta[2], log.p=TRUE, lower.tail = FALSE)) + length(z)*(theta[1] + theta[2]^2/2)
}
fit <- optim(c(0,1),nll,z=z)
fit$par
EXhat <- exp(fit$par[1]+fit$par[2]^2/2) # MLE of EX
EXhat
curve(plnorm(z, fit$par[1], fit$par[2], lower.tail=FALSE)/EXhat, xname="z", col="blue",add=TRUE)

1
Xin chào, cảm ơn bạn rất nhiều vì đã trả lời, tôi chưa dành thời gian để hiểu mọi thứ, chỉ muốn thêm rằng tôi biết phân phối chung từ nghiên cứu khác. (vấn đề duy nhất với nghiên cứu khác là nó khiến mọi người lựa chọn giữa các lựa chọn cho việc họ ăn chay bao lâu và một trong các lựa chọn là "Hơn 10 năm" và trung bình phụ thuộc gần như hoàn toàn vào thời gian hơn 10 năm của mọi người vẫn ăn chay)
Saulius imčikas

Ok, tôi hy vọng không có sai sót lớn trong lý luận của tôi. Tôi thấy rằng @PhiNotPi đến cùng một pdf trong bình luận của anh ấy cho OP.
Jarle Tufto

@Saulius Nếu bạn có quyền truy cập vào tập dữ liệu bị kiểm duyệt bên phải thứ hai và các phân phối cơ bản thực sự có thể được coi là giống hệt nhau, thì giải pháp lý tưởng sẽ là kết hợp khả năng cho tập dữ liệu đó (đơn giản là ghi lại nếu chỉ là một số lấy mẫu kiểm duyệt đúng) và sau đó tối đa hóa khả năng chung.
Jarle Tufto

rằng một điều không đúng kiểm duyệt: imgur.com/U8ofZ3A Bây giờ tôi nhận ra rằng tôi phải đề cập đến vấn đề này ngay từ đầu nhưng tôi nghĩ rằng vấn đề của tôi có một số giải pháp đơn giản hơn ...
Saulius imčikas

@Saulius Những dữ liệu đó được kiểm duyệt khoảng thời gian. Một lần nữa, nó là đơn giản để tính toán khả năng.
Jarle Tufto

0

(Tôi đã phối hợp thêm nó, vì nó xuất hiện @JarleTufto đã đưa ra một cách tiếp cận toán học tốt đẹp; Tuy nhiên tôi không đủ thông minh để hiểu câu trả lời của anh ấy, và bây giờ tôi tò mò liệu đó có phải là cách tiếp cận chính xác không, hoặc nếu cách tiếp cận tôi mô tả dưới đây từng có công dụng của nó.)

Những gì tôi sẽ làm là đoán độ dài trung bình và đoán một vài phân phối xung quanh nó, và sau đó, mỗi lần, tạo một mô phỏng dân số của tôi và lấy mẫu thường xuyên.

Bạn nói rằng giả sử tổng dân số ăn chay không thay đổi, vì vậy mỗi lần người mẫu của tôi có người dừng lại, một người ăn chay hoàn toàn mới được tạo ra. Chúng ta cần chạy mô hình trong một số năm mô phỏng để đảm bảo mô hình đã ổn định, trước khi chúng ta có thể bắt đầu lấy mẫu. Sau đó, tôi nghĩ rằng bạn có thể lấy mẫu mỗi tháng mô phỏng (*) cho đến khi bạn có đủ để hình thành khoảng tin cậy 90% của mình.

*: hoặc bất kỳ độ phân giải nào hoạt động với dữ liệu của bạn. Nếu mọi người đưa ra câu trả lời của họ cho năm gần nhất, lấy mẫu cứ sau 6 tháng là đủ tốt.

Trong tất cả các dự đoán của bạn, bạn chọn giá trị trung bình và phân phối (tính trung bình trên tất cả các mẫu bạn đã lấy) mang lại cho bạn kết quả gần nhất với kết quả khảo sát thực tế của bạn.

Tôi sẽ lặp lại dự đoán của mình một vài lần, để thu hẹp vào trận đấu hay nhất.

Phân phối tốt nhất có thể không phải là đỉnh đơn. Cá nhân tôi ăn chay, cá nhân tôi có thể nghĩ đến việc dừng lại vì những thay đổi lớn trong lối sống (điển hình là kết hôn / sống với một quốc gia không ăn chay, hoặc di chuyển, hoặc bị bệnh nặng và bác sĩ cho rằng đó có thể là chế độ ăn kiêng); mặt khác là sức mạnh của thói quen: bạn ăn chay càng lâu thì bạn càng có khả năng trở thành một người. Nếu dữ liệu của bạn đã hỏi tuổi và tình trạng mối quan hệ, chúng tôi cũng có thể ném nó vào mô phỏng ở trên.

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.