現在の菜食主義者に関する調査データしかない場合、菜食主義の平均遵守期間を計算する方法は?


16

ランダムな人口サンプルが調査されました。彼らは菜食を食べるか尋ねられました。「はい」と答えた場合、菜食主義者の食事を中断することなくどのくらいの期間食べているかを指定するように求められました。このデータを使用して、菜食主義の平均遵守期間を計算します。言い換えれば、誰かが菜食主義者になったとき、私は平均して彼らが菜食主義者のままでいることを長く知りたいと思います。それを仮定しましょう:

  • すべての回答者が正確かつ正確に回答した
  • 世界は安定しています:菜食主義の人気は変わらず、アドヒアランスの平均期間も変わりません。

これまでの私の推論

毎年の初めに2人がベジタリアンになる世界のおもちゃモデルを分析すると役立つことがわかりました。毎回、1人は1年間ベジタリアンを続け、もう1人は3年間滞在します。明らかに、この世界のアドヒアランスの平均期間は(1 + 3)/ 2 = 2年です。以下に例を示します。各長方形は、菜食主義の期間を表します。

イラスト

4年目の半ばに調査を行ったとしましょう(赤線)。次のデータを取得します。

テーブル

調査を3年目以降の任意の年に受けた場合、同じデータが得られます。得られた回答の平均をとると、次のようになります。

(2 * 0.5 + 1.5 + 2.5)/ 4 = 1.25

誰もが調査直後に菜食主義者でなくなったと仮定しているため、過小評価していますが、これは明らかに間違っています。これらの参加者がベジタリアンのままでいる実際の平均時間に近い推定値を取得するために、平均して、菜食主義の期間の約半分の時間を報告し、報告された期間に2を掛けると仮定できます。 (私が分析しているような)人口から、これは現実的な仮定だと思います。少なくとも、正しい期待値が得られます。ただし、2倍にすることが唯一の場合、平均2.5になりますが、これは過大評価です。これは、菜食主義者が長くいるほど、現在の菜食主義者のサンプルに含まれる可能性が高くなるためです。

誰かが現在の菜食主義者のサンプルに含まれている確率は、菜食主義の長さに比例すると思いました。この偏りを説明するために、私は現在のベジタリアンの数を彼らの予測されたアドヒアランスの長さで割ろうとしました:

さらに別のテーブル

ただし、これにより不正確な平均も得られます。

(2 * 1 +⅓* 3 +⅕* 5)/(2 +⅓+⅕)= 4 / 2.533333 = 1.579年

菜食主義者の数を正しいアドヒアランスの長さで割った場合、正しい推定値が得られます。

(1 +⅓*(1 + 3 + 5))/(1 +⅓* 3)= 2年

しかし、アドヒアランスの予測された長さを使用し、それが実際に私が持っているすべてである場合、それは機能しません。他に何を試すべきかわかりません。私はサバイバル分析について少し読みましたが、この場合にどのようにそれを適用するのかわかりません。理想的には、90%の信頼区間も計算できるようにしたいと思います。どんなヒントでも大歓迎です。

編集:上記の質問に答えがない可能性があります。しかし、別の研究では、人々が菜食主義者であるかどうか、過去に菜食主義者であった回数を無作為に抽出しました。私はまた、両方の研究と他のいくつかのことで皆の年齢を知っています。たぶん、この情報を現在の菜食主義者の調査と一緒に使用して、どういうわけか平均値を得ることができます。現実には、私が話した研究はパズルのほんの一部に過ぎませんが、非常に重要なものであり、それをもっと活用したいと思います。


1
それはオプションのatmではありません。このデータは、アドヒアランスの長さのいくつかの証拠を確実に提供しますが、使用方法がわかりません。
サウリウスシンチカス

1
画像の少なくとも1つが消えたようです(URLを使用すると403エラーが発生します)。
バリーカーター

2
@kjetilbhalvorsenでは、菜食主義者が生涯菜食主義者であり続けるかどうかは問題ではありません。ある時点で、肉を食べるか死ぬことによって、菜食主義者になるのをやめます。
ペレ

4
@kjetil「本物のベジタリアン」のコメントは、No True Scotsmanのように聞こえます。菜食主義者の通常の定義は、将来何が起こるか、また誰かが菜食主義者である理由については何も述べていないが、属性が考慮されているときの彼らの行動についてのみ述べている。誰かが今菜食主義者であれば、彼らがしている菜食主義者は今、のためにどんな理由彼らが一つであることが起こります。私は、肉を食べるという考えや私たちがしたと感じる理由についての個人的な感情は、ここで話題になっているとは思いません。彼らはどこかに属します。
Glen_b -Reinstateモニカ

2
菜食主義者である人々はサンプルに表示される可能性が高いため、サンプルデータの確率密度関数は、1からアドヒアランスの長さの累積分布関数を引いたものに比例します。あなたの例から例を作るために、長さの分布は[0、0.5、0、0.5](50%は1年間持続、50%は3年間)であり、CDFは[0、0.5、0.5、1 ]、1マイナス[1、0.5、0.5、0]で、サンプルの[2、1、1、0]カウントに比例します。
PhiNotPi

回答:


10

ましょう付着長のPDF示すX集団における菜食主義のを。我々の目的は、推定することであるE X = 0 X F XX D XをfX(x)XEX=0xfX(x)dx

調査(イベント)に含まれる確率がXに比例すると仮定すると、調査に含まれるもののアドヒアランス長Xの確率密度は f X | Sx = x f Xx SXX 調査に含まれる時点で、時間Zのみが経過しています。X(およびS)を条件とする、ベジタリアンであると報告された時間は、pdf fZ| X=xz=1

fX|S(x)=xfX(x)xfX(x)dx=xfX(x)EX.
ZXS したがって、総確率の法則を使用すると、調査に含まれるもののうちベジタリアンとして渡された 時間Zの全体分布は f Zz
fZ|X=x(z)=1x,0<z<x.
Z ここでFXzXの累積分布関数です。以来、Xは正の変数であり、FX0=PX0=0とそうFZ0=1/EX
fZ(z)=zfZ|X=x(z)fX|S(x)dx=z1xxfX(x)EXdx=1FX(z)EX,
FX(z)XXFX(0)=P(X0)=0fZ(0)=1/EX

これは、おそらく最初に観測データz 1z 2z nからノンパラメトリックにf Zz )を推定することによって推定することを示唆しています。1つのオプションは、f = Zz )の領域がz = 0で下限を持つため、z = 0の 周りでSilvermanの反射法を使用したカーネル密度推定です。シミュレートされたデータに適用されるこの方法は、下図の赤い曲線として示されています。見積もりを得たEXfZ(z)z1,z2,,znz=0fZ(z)z=0FZZにおいてZ=0は、の推定値EXは、その後で与えられる ^ E X =1/ F Z0f^Z(0)fZ(z)z=0EXEX^=1/f^Z(0)

ここに画像の説明を入力してください

fZ(z)fX(0)=FX(0)>0fZ(0)EXEX このような状況では、より多くの仮定を行うことなく困難と思われます。これは、基本的に、この状況に存在する短い順守時間が、偏ったサンプリングの結果として観測データにほとんど現れないためです。

fX(x)

L(θ)=i=1n1FX(zi;θ)EX(θ)

データをシミュレートし、両方のメソッドを実装するRコード:

# 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
ねえ、答えてくれてありがとう、まだすべてを理解するのに時間をかけていません。ただ、その別の研究から一般的な分布を知っていることを付け加えたかっただけです。(他の研究の唯一の問題は、菜食主義者である期間の選択肢から人々を選択させ、選択肢の1つは「10年以上」であり、平均はほぼ10年以上の期間にほぼ依存することですベジタリアンのまま)
サウリウスシンチカス

わかりました、私の推論に大きな欠陥がないことを望みます。@PhiNotPiは、OPへの彼のコメントで同じPDFに到達していることがわかります。
ジャールタフト

@Saulius 2番目の右打ち切りデータセットへのアクセス権があり、基礎となる分布が実際に同一であると仮定できる場合、理想的な解決策はそのデータセットの尤度を結合することです正しい打ち切りのサンプリング)を実行し、結合尤度を最大化します。
ジャールタフト

:1右検閲されていないことをimgur.com/U8ofZ3A私は今、私は開始時にこれを言及しなければならなかったことを実現しますが、私は...私の問題は、いくつかのより簡単な解決策を持っていたことを考えた
SauliusŠimčikasを

@Sauliusこれらのデータは区間打ち切りです。繰り返しますが、尤度を計算するのは簡単です。
ジャールタフト

0

(@JarleTuftoが既に素晴らしい数学的なアプローチを与えているように見えるので、これを追加することでディザリングしました;しかし、私は彼の答えを理解するのに十分賢くありません、そして今、それがまったく同じアプローチであるか、以下で説明するアプローチには、その用途があります。)

私がやることは、平均の長さを推測し、その周りのいくつかの分布を推測し、それぞれについて、母集団のシミュレーションを行い、定期的にサンプリングすることです。

あなたは、菜食主義者の総人口は変わらないと仮定すると言ったので、私のモデルが誰かを止めるたびに、真新しい菜食主義者が作成されます。サンプリングを開始する前に、モデルが落ち着いたことを確認するために、シミュレーションされた数年間モデルを実行する必要があります。その後、90%の信頼区間を形成するのに十分になるまで、シミュレートされた月(*)ごとにサンプルを取得できると思います。

*:またはデータで機能する解像度。人々が最も近い年に回答した場合、6か月ごとにサンプリングすれば十分です。

すべての推測の中から、実際の調査で得られた結果に最も近い結果が得られる平均と分布(選択したすべてのサンプルの平均)を選択します。

推測を数回繰り返して、最適な一致を絞り込みます。

最適な分布は単一ピークではない場合があります。私が個人的に考えている元菜食主義者は、ライフスタイルの大きな変化(通常、非菜食主義者、または引っ越している国と結婚/生活している、または重病にかかっており、医師が食事である可能性を示唆している)のために停止しました; 反対側には習慣の力があります。あなたが菜食主義者である時間が長ければ長いほど、あなたは一つであり続ける可能性が高くなります。あなたのデータが年齢と関係の状態を尋ねていた場合、上記のシミュレーションでもそれを投げることができます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.