東大数学科卒の元官僚はこう分析してるが、お前らはどうなると思う?
http://www.zakzak.co.jp/soc/news/200220/dom2002200003-n2.html
中国国外感染者の中国国内との比率をみると、
1月20日の数字公表以降は、0・8〜2・6%で比較的安定している。
これは、新型肺炎の感染者のほとんどは中国国内、それも湖北省に集中しているからだ。
ちなみに中国国外での感染者数は、中国国内の1・1%だ(2月16日現在)。
本コラムで紹介したが、現時点では、最終的な中国国内の感染者数は20万人超と筆者は推計している。
となると、中国国外の感染者は数千人程度になるだろう。
中国国外のうち日本の比率は1割弱なので、日本の感染者数は数百人程度であろう。
その場合、死者も数人から10人程度になるだろう。
こうした推計をすると、今の感染者は氷山の一角だと思われるが、今後の増加ペースはどうなるだろうか。
新型コロナウイルスの検査は簡単に行えるので、今後、日本での感染者数は増えていくだろう。
ある時点ではそれがネズミ算的に増えるかのように思える局面もあるだろうが、
筆者の推計が正しければ、現時点ではせいぜい数百人が一つのメドだ。
数学 統計に詳しい人が語るコロナウイルス
■ このスレッドは過去ログ倉庫に格納されています
1132人目の素数さん
2020/02/29(土) 02:18:41.53ID:twdO677Q369132人目の素数さん
2020/04/19(日) 01:56:19.99ID:gn6lsHTI もし、筆者の伝えたいことが、「陽性判定は、即、感染者ということにはならない」 つまり、
「間違えることもある」という点にあるのであれば、あなたの言い分は通るかもしれないが、筆者の力点は、
>>正解は、約26%だ。判定が「陽性」でも、本当の感染者は10人中3人以下ということだ。
を見て判る通り、「陽性的中率が低い」というというところにある。
そのために、感度や特異度、真の感染率などに、具体的な数字を与えているし、問題設定の中では、わざわざ
>> (検査に至った経緯や、発熱・咳など他の所見は無視する)。
等と断り、終始定量的な説明が加えられている。
ならばこそ、なおさら、「クラスター」という言葉は使うべきでは無かった。
クラスター周辺での調査と、市中での無作為検査では、陽性的中率が変わってしまうのは、
全体を通して、筆者が言いたいことであっただろうに、にもかかわらず、問題の解説で
前提を崩してしまう「クラスター」という言葉を使ったのだから。
そもそも、ニュースでは、「PCRで陽性が○○人」等という使い方をしていただろうか?
単に「感染者○○人」だと思う。もちろん、この感染者の中には、偽陽性も含まれているだろうが、
検査陽性者数と感染者数の違いに注目を与えかねない「陽性者○○人」のような報道は記憶に無い。
そう考えると、「誤解の種」を自ら蒔いて、刈り取るかのような記事に見えてきた。
「間違えることもある」という点にあるのであれば、あなたの言い分は通るかもしれないが、筆者の力点は、
>>正解は、約26%だ。判定が「陽性」でも、本当の感染者は10人中3人以下ということだ。
を見て判る通り、「陽性的中率が低い」というというところにある。
そのために、感度や特異度、真の感染率などに、具体的な数字を与えているし、問題設定の中では、わざわざ
>> (検査に至った経緯や、発熱・咳など他の所見は無視する)。
等と断り、終始定量的な説明が加えられている。
ならばこそ、なおさら、「クラスター」という言葉は使うべきでは無かった。
クラスター周辺での調査と、市中での無作為検査では、陽性的中率が変わってしまうのは、
全体を通して、筆者が言いたいことであっただろうに、にもかかわらず、問題の解説で
前提を崩してしまう「クラスター」という言葉を使ったのだから。
そもそも、ニュースでは、「PCRで陽性が○○人」等という使い方をしていただろうか?
単に「感染者○○人」だと思う。もちろん、この感染者の中には、偽陽性も含まれているだろうが、
検査陽性者数と感染者数の違いに注目を与えかねない「陽性者○○人」のような報道は記憶に無い。
そう考えると、「誤解の種」を自ら蒔いて、刈り取るかのような記事に見えてきた。
370132人目の素数さん
2020/04/19(日) 02:31:27.50ID:Czp86qrf371132人目の素数さん
2020/04/19(日) 07:50:33.21ID:Czp86qrf クラスターで10人が陽性として検査した人数と陽性的中率PPVとの関係をグラフにしてみた。
灰色実線は95%信頼区間境界、灰色点線はPPV=0.26の線
https://i.imgur.com/T6TDh2r.png
全人口の有病率をクラスター内の有病率にすり替えて、10人陽性でも感染しているのは3人以下という間違った結論を出している。
わかっていて書いているのか、馬鹿なのか、どちらかは不明。
灰色実線は95%信頼区間境界、灰色点線はPPV=0.26の線
https://i.imgur.com/T6TDh2r.png
全人口の有病率をクラスター内の有病率にすり替えて、10人陽性でも感染しているのは3人以下という間違った結論を出している。
わかっていて書いているのか、馬鹿なのか、どちらかは不明。
372132人目の素数さん
2020/04/19(日) 07:56:38.54ID:Czp86qrf >>368
罹患の定義による。
他人のゲノムでコンタミネーションが起こったりしていなければ、
あるゲノムのシークアンスが検出されたら罹患というなら、罹患率は100%
ウイルスとして増殖能力を有しているかは不明、死骸の一部を検出しているだけかもしれない。
罹患の定義による。
他人のゲノムでコンタミネーションが起こったりしていなければ、
あるゲノムのシークアンスが検出されたら罹患というなら、罹患率は100%
ウイルスとして増殖能力を有しているかは不明、死骸の一部を検出しているだけかもしれない。
373132人目の素数さん
2020/04/19(日) 08:01:23.85ID:Czp86qrf374132人目の素数さん
2020/04/19(日) 20:39:24.23ID:Czp86qrf Natureのこの論文はエクセルとRのコードがついていて自分で再現できるので入力の手間が省ける。
https://www.nature.com/articles/s41591-020-0869-5
感染させる確率分布をガンマ分布を平行移動させた分布として想定して、データから最尤法でパラメータ算出している。
https://www.nature.com/articles/s41591-020-0869-5
感染させる確率分布をガンマ分布を平行移動させた分布として想定して、データから最尤法でパラメータ算出している。
375132人目の素数さん
2020/04/20(月) 17:39:51.08ID:Db3kUO+J >>374
そのプログラムをみていくと
感染させる確率分布を
#--- infectiousness, gamma distribution ---
# gpar[1:2]: hyper-parameters (gamma)
# x : infection time of infectee w.r.t onset time of infector
f.Xc = function(x, gpar) { dgamma(x, gpar[1], gpar[2]) }
ガンマ分布にしているけど
一人が一人を感染させるモデルだから
形状パラメータgpar[1]は1で固定、つまり、指数分布だと思うんだがどうだろ?待ち時間の分布と同じ考え。
w.r.t = with reference to らしい
そのプログラムをみていくと
感染させる確率分布を
#--- infectiousness, gamma distribution ---
# gpar[1:2]: hyper-parameters (gamma)
# x : infection time of infectee w.r.t onset time of infector
f.Xc = function(x, gpar) { dgamma(x, gpar[1], gpar[2]) }
ガンマ分布にしているけど
一人が一人を感染させるモデルだから
形状パラメータgpar[1]は1で固定、つまり、指数分布だと思うんだがどうだろ?待ち時間の分布と同じ考え。
w.r.t = with reference to らしい
376132人目の素数さん
2020/04/20(月) 19:39:48.89ID:Db3kUO+J >>375
補足
ひとりが別の一人に一回感染させるというモデルなので待ち時間の分布の指数分布でいいと思う。
ガンマ分布の形状パラメータ=1とおけば指数分布になる。
プログラムを書き直してグラフにすると
https://i.imgur.com/paErvfa.png
発症前に感染させている確率は47%と原著とあまりかわらないが、そのピークは発症1.6日前という結果になった。
補足
ひとりが別の一人に一回感染させるというモデルなので待ち時間の分布の指数分布でいいと思う。
ガンマ分布の形状パラメータ=1とおけば指数分布になる。
プログラムを書き直してグラフにすると
https://i.imgur.com/paErvfa.png
発症前に感染させている確率は47%と原著とあまりかわらないが、そのピークは発症1.6日前という結果になった。
377132人目の素数さん
2020/04/20(月) 21:40:46.31ID:LmPkmRXS >>369
>>正解は、約26%だ。判定が「陽性」でも、本当の感染者は10人中3人以下ということだ。
ああ、確かにそこは問題だな。前段の「クラスターで陽性が10人」とリンクすると
思われても仕方がない。著者もうかつだとは思うが、有病率により的中率が変わると
いう話の内容は間違いではない。
>>正解は、約26%だ。判定が「陽性」でも、本当の感染者は10人中3人以下ということだ。
ああ、確かにそこは問題だな。前段の「クラスターで陽性が10人」とリンクすると
思われても仕方がない。著者もうかつだとは思うが、有病率により的中率が変わると
いう話の内容は間違いではない。
378132人目の素数さん
2020/04/20(月) 21:52:20.09ID:LmPkmRXS >>371
元記事のグラフの有病率0.1のところをみれば的中率が80%越えになってるわけで、
単純に「クラスター」って言葉を軽んじてただけなんだろうね。
https://webronza.asahi.com/photo/photo.html?photo=/S2010/upload/2020032600006_3.jpg
元記事のグラフの有病率0.1のところをみれば的中率が80%越えになってるわけで、
単純に「クラスター」って言葉を軽んじてただけなんだろうね。
https://webronza.asahi.com/photo/photo.html?photo=/S2010/upload/2020032600006_3.jpg
379132人目の素数さん
2020/04/20(月) 23:44:00.74ID:IwCIr2qd >>375
たにんへの感染力の分布なんか数学的にわかるわけないやん?罹患して気道部にウィルスを放出できるくらいのウィルス量が繁殖するのは罹患していきなりなわけがない。
たにんへの感染力の分布なんか数学的にわかるわけないやん?罹患して気道部にウィルスを放出できるくらいのウィルス量が繁殖するのは罹患していきなりなわけがない。
380132人目の素数さん
2020/04/21(火) 00:05:49.98ID:bowf2rRh 適当にSEIRモデル拡張してシミュレーションすれば分かるけどかなり自粛しても感染爆発は起こるよ
381132人目の素数さん
2020/04/21(火) 02:51:28.64ID:7mnZKVUh382132人目の素数さん
2020/04/21(火) 06:50:58.83ID:J5/+FVIQ ガンマ分布:「一定期間に1回起きると期待されるランダムな事象が複数回起きるまでの時間の分布」
複数回でなくて1回だと指数分布だと思う。
何度も感染した症例を扱っているのではないのだから、ガンマ分布のパラメータを求める意味が理解できない。
複数回でなくて1回だと指数分布だと思う。
何度も感染した症例を扱っているのではないのだから、ガンマ分布のパラメータを求める意味が理解できない。
383132人目の素数さん
2020/04/21(火) 06:56:00.72ID:J5/+FVIQ >>380
SEIRモデルだと感染爆発させた方が早期に収束する。死者や感染者は増えるけど。
シミュレーションでは鎖国している前提で4割が感染すればオリンピックは可能だった。
SEIRモデルはEは感染力なし、Rは再感染しないというモデルだからなぁ。
モデルを修正してR->Sの再感染が0.1%あるだけで終焉しなかったな。
しかも、外部から感染力の強いキャリアー(保菌者)が入ってくることはモデルには組み込まれていない。
SEIRモデルだと感染爆発させた方が早期に収束する。死者や感染者は増えるけど。
シミュレーションでは鎖国している前提で4割が感染すればオリンピックは可能だった。
SEIRモデルはEは感染力なし、Rは再感染しないというモデルだからなぁ。
モデルを修正してR->Sの再感染が0.1%あるだけで終焉しなかったな。
しかも、外部から感染力の強いキャリアー(保菌者)が入ってくることはモデルには組み込まれていない。
384132人目の素数さん
2020/04/21(火) 06:59:16.79ID:J5/+FVIQ >>379
結局、一定期間に1回起きると期待されるランダムな事象として、その一定期間を推測しているんだろ?
結局、一定期間に1回起きると期待されるランダムな事象として、その一定期間を推測しているんだろ?
385132人目の素数さん
2020/04/21(火) 07:47:46.72ID:J5/+FVIQ >>381
SIRモデルって鎖国モデルだから結論は信用できん。
SIRモデルって鎖国モデルだから結論は信用できん。
386132人目の素数さん
2020/04/21(火) 11:00:38.71ID:LfxF6Y+G 統計できる人尊敬するわ
MCMCとか訳分からん
MCMCとか訳分からん
387132人目の素数さん
2020/04/21(火) 11:28:48.72ID:J5/+FVIQ >>386
統計ってある統計量がほんにゃら分布に従うというのを黙って受容しないと次に進めないよね。
郡内分散と郡間分散の比がF分布に従うとか言われても
どうしてかは理解していない。
stanのNUTSとかfrog leapとかわからんままにMCMCさせている。
統計ってある統計量がほんにゃら分布に従うというのを黙って受容しないと次に進めないよね。
郡内分散と郡間分散の比がF分布に従うとか言われても
どうしてかは理解していない。
stanのNUTSとかfrog leapとかわからんままにMCMCさせている。
388イナ ◆/7jUdUKiSM
2020/04/21(火) 13:30:52.20ID:0ilKIHza こういうときこそコンピューターとかに頼らずに一つ一つ数をかぞえて方程式を立て、微分するべきだと思う。
‖∩∩‖ □ ‖ \
(-_-)) ‖______‖
(っγυ 。‖╂─╂‖
■`(_)_)ц~ ‖╂─╂‖
\■υυ■_∩∩、\\‖
\\\\⊂(_ _ )`⌒つ)
\\\\\\\`υ、\/|
\\\\\`.,、、、\`/ |
__\\\\彡`-`ミっ/ L
 ̄|\_\\_U,~⌒ヾ /
]| ‖ ̄ ̄ ̄ ̄U~~U / /
__| ‖ □ □ ‖ |/ /
___`‖________‖/_/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄‖ /
__________________‖/
‖∩∩‖ □ ‖ \
(-_-)) ‖______‖
(っγυ 。‖╂─╂‖
■`(_)_)ц~ ‖╂─╂‖
\■υυ■_∩∩、\\‖
\\\\⊂(_ _ )`⌒つ)
\\\\\\\`υ、\/|
\\\\\`.,、、、\`/ |
__\\\\彡`-`ミっ/ L
 ̄|\_\\_U,~⌒ヾ /
]| ‖ ̄ ̄ ̄ ̄U~~U / /
__| ‖ □ □ ‖ |/ /
___`‖________‖/_/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄‖ /
__________________‖/
389132人目の素数さん
2020/04/21(火) 14:53:08.35ID:pHehMVs5 >>386
sirモデルでは罹患した患者が回復するまでの機会中常に一定の確率(感染率)で遭遇した感受受宿主に感染を広めると仮定して立式してる。
ザックリした傾向を見るならそれで十分だけど、実際のモデルではそんな事はありえない。
感染する確率は患者の体内で繁殖しているウィルス量の増加に従って増えるからその効果を勘案してΓ分布(というかt^c d^x なる形の関数)に応じて感染率が罹患した時点から変化するとするんでしょ?
もちろんコレでも大体の傾向見るにはコレで十分というモデルを臨床例から適当に選んでるだけでしょ?
実際には未来永劫感染力を持ち続けるなんて事があるはずないし、罹患初期のウィルス量の増え方はおそらく指数関数的に増えるものを採用すべきだろうし。
sirモデルでは罹患した患者が回復するまでの機会中常に一定の確率(感染率)で遭遇した感受受宿主に感染を広めると仮定して立式してる。
ザックリした傾向を見るならそれで十分だけど、実際のモデルではそんな事はありえない。
感染する確率は患者の体内で繁殖しているウィルス量の増加に従って増えるからその効果を勘案してΓ分布(というかt^c d^x なる形の関数)に応じて感染率が罹患した時点から変化するとするんでしょ?
もちろんコレでも大体の傾向見るにはコレで十分というモデルを臨床例から適当に選んでるだけでしょ?
実際には未来永劫感染力を持ち続けるなんて事があるはずないし、罹患初期のウィルス量の増え方はおそらく指数関数的に増えるものを採用すべきだろうし。
390132人目の素数さん
2020/04/21(火) 14:54:06.11ID:pHehMVs5 mcmc
391132人目の素数さん
2020/04/22(水) 08:56:14.63ID:0tlpvLKp392132人目の素数さん
2020/04/22(水) 13:23:53.12ID:0tlpvLKp 週末は休むとか週間変動の影響を除くために1週間の移動平均で線形回帰して片対数グラフにすると
https://i.imgur.com/7VwfswD.png
自粛の効果がでてきているな。 多分、検査自粛の効果だろうな。
https://i.imgur.com/7VwfswD.png
自粛の効果がでてきているな。 多分、検査自粛の効果だろうな。
393イナ ◆/7jUdUKiSM
2020/04/22(水) 19:51:00.75ID:iq1GZOqA394132人目の素数さん
2020/04/23(木) 04:58:29.35ID:3vcirHk0 >>393
これを微分で解いたら、ネ申か狂人だろな。
AからHの8人はそれぞれ正直者か嘘つきであり、誰が正直者か嘘つきかはお互いに知っている。
A,B,C,D,Eは嘘つきなら必ず嘘をつくが、F,G,Hは嘘つきでも正しいことを言う場合がある。
次の証言から確実に正直者と断定できるのは誰か?
A「嘘つきの方が正直者より多い」
B「Hは嘘つきである」
C「Bは嘘つきである」
D「CもFも嘘つきである」
E「8人の中に、少なくとも1人嘘つきがいる」
F「8人の中に、少なくとも2人嘘つきがいる」
G「Eは嘘つきである」
H「AもFも正直者である」
これを微分で解いたら、ネ申か狂人だろな。
AからHの8人はそれぞれ正直者か嘘つきであり、誰が正直者か嘘つきかはお互いに知っている。
A,B,C,D,Eは嘘つきなら必ず嘘をつくが、F,G,Hは嘘つきでも正しいことを言う場合がある。
次の証言から確実に正直者と断定できるのは誰か?
A「嘘つきの方が正直者より多い」
B「Hは嘘つきである」
C「Bは嘘つきである」
D「CもFも嘘つきである」
E「8人の中に、少なくとも1人嘘つきがいる」
F「8人の中に、少なくとも2人嘘つきがいる」
G「Eは嘘つきである」
H「AもFも正直者である」
395132人目の素数さん
2020/04/23(木) 08:28:17.25ID:3vcirHk0 CTとPCRの一致係数(κ値)を信頼区間つきでMCMCしようかと思ってスクリプトを書いたはいいが
肝心なデータがない :(
事前分布を一様分布にするのには異論があるかもしれん。
library(rjags)
kappa.model='
model{
A ~ dbeta(1,1) # A:Pr[CT+], 1-A:Pr[CT-]
B ~ dbeta(1,1) # B:Pr[PCR+|CT+]
C ~ dbeta(1,1) # C:Pr[PCR-|CT-]
p[1]=A*B # CT+PCR-
p[2]=A*(1-B) # CT+PCR-
p[3]=(1-A)*(1-C) # CT-PCR+
p[4]=(1-A)*C # CT-PCR-
y[1:4] ~ dmulti(p[],n) # multinominal distribution
po=(p[1]+p[4])/n # observed agreement
pe=(p[1]+p[2])/n*(p[1]+p[3])/n + (p[3]+p[4])/n*(p[2]+p[4])/n # coincidence
kappa=(po-pe)/(1-pe)
PABAK=2*po-1 # Prevalence Adjusted Bias Adjusted Kappa
}
'
writeLines(kappa.model,'kappaj.txt')
肝心なデータがない :(
事前分布を一様分布にするのには異論があるかもしれん。
library(rjags)
kappa.model='
model{
A ~ dbeta(1,1) # A:Pr[CT+], 1-A:Pr[CT-]
B ~ dbeta(1,1) # B:Pr[PCR+|CT+]
C ~ dbeta(1,1) # C:Pr[PCR-|CT-]
p[1]=A*B # CT+PCR-
p[2]=A*(1-B) # CT+PCR-
p[3]=(1-A)*(1-C) # CT-PCR+
p[4]=(1-A)*C # CT-PCR-
y[1:4] ~ dmulti(p[],n) # multinominal distribution
po=(p[1]+p[4])/n # observed agreement
pe=(p[1]+p[2])/n*(p[1]+p[3])/n + (p[3]+p[4])/n*(p[2]+p[4])/n # coincidence
kappa=(po-pe)/(1-pe)
PABAK=2*po-1 # Prevalence Adjusted Bias Adjusted Kappa
}
'
writeLines(kappa.model,'kappaj.txt')
396132人目の素数さん
2020/04/23(木) 10:37:41.66ID:3vcirHk0 中国には特異度100%の検査キットがあるんだってね。
すべて陰性にでるようにセットされていると。
すべて陰性にでるようにセットされていると。
397132人目の素数さん
2020/04/23(木) 13:51:17.19ID:3vcirHk0 新型コロナ患者を治療している病院に100人の職員がいる。
検体採取器具は5人分、試薬は1回分しかないとする。
無作為抽出した5人の職員から採取した検体を混合して検査したら陽性であった。
職員の陽性者数の期待値を求めよ。
また、50人以上の感染者いる確率はいくつか?
検査の陽性率はハイリスク群に検査している東京の数値2457/6654を使って計算せよ。
https://i.imgur.com/zYK75Lo.jpg
検体採取器具は5人分、試薬は1回分しかないとする。
無作為抽出した5人の職員から採取した検体を混合して検査したら陽性であった。
職員の陽性者数の期待値を求めよ。
また、50人以上の感染者いる確率はいくつか?
検査の陽性率はハイリスク群に検査している東京の数値2457/6654を使って計算せよ。
https://i.imgur.com/zYK75Lo.jpg
398132人目の素数さん
2020/04/23(木) 13:53:25.50ID:3vcirHk0399132人目の素数さん
2020/04/23(木) 17:36:48.57ID:3vcirHk0 >>397
これであってるかな?
> # 期待値
> integrate(function(x) x*pdf(x),0,100)$value
[1] 37.13
> # 50人以上の確率
> integrate(pdf,50,100)$value
[1] 0.0041903
> c(HPDI.lower=lwr,HPDI.upper=upr) # HPDI
HPDI.lower HPDI.upper
27.778 46.558
これであってるかな?
> # 期待値
> integrate(function(x) x*pdf(x),0,100)$value
[1] 37.13
> # 50人以上の確率
> integrate(pdf,50,100)$value
[1] 0.0041903
> c(HPDI.lower=lwr,HPDI.upper=upr) # HPDI
HPDI.lower HPDI.upper
27.778 46.558
400132人目の素数さん
2020/04/23(木) 22:02:05.89ID:MtjaFZpr レベル低
401132人目の素数さん
2020/04/24(金) 02:55:58.61ID:juJsFFfP 慶応大の調査で、コロナ以外で来院した人をPCR検査したところ
4/67の確率で要請だった
東京都内1500万のうち何人くらいが感染しているか推定せよ
4/67の確率で要請だった
東京都内1500万のうち何人くらいが感染しているか推定せよ
402132人目の素数さん
2020/04/24(金) 03:18:37.48ID:XPGerQAq 岩田健太郎・神戸大学教授『東京はすでに20万〜400万人感染の可能性』
https://leia.5ch.net/test/read.cgi/poverty/1587664106/
https://leia.5ch.net/test/read.cgi/poverty/1587664106/
403132人目の素数さん
2020/04/24(金) 05:36:50.27ID:9Fe9PNfV404132人目の素数さん
2020/04/24(金) 05:52:14.01ID:9Fe9PNfV >>397
混ぜて検査する方法の最適化問題ってのもあるね。
https://mobile.twitter.com/p_gotcha/status/1243501000943702017
https://twitter.com/5chan_nel (5ch newer account)
混ぜて検査する方法の最適化問題ってのもあるね。
https://mobile.twitter.com/p_gotcha/status/1243501000943702017
https://twitter.com/5chan_nel (5ch newer account)
405132人目の素数さん
2020/04/24(金) 08:13:06.02ID:0onl6lJy406132人目の素数さん
2020/04/24(金) 12:07:56.92ID:v55OWzbu 新型コロナ患者を治療している病院に100人の職員がいる。
検体採取器具は10人分、試薬は1回分しかないとする。
無作為抽出した10人の職員から採取した検体を混合して検査したら陰性であった。
職員の陽性者数の期待値を求めよ。
また、50人以上の感染者いる確率はいくつか?
検査の陽性率はハイリスク群に検査している東京の数値2457/6654を使って計算せよ。
検体採取器具は10人分、試薬は1回分しかないとする。
無作為抽出した10人の職員から採取した検体を混合して検査したら陰性であった。
職員の陽性者数の期待値を求めよ。
また、50人以上の感染者いる確率はいくつか?
検査の陽性率はハイリスク群に検査している東京の数値2457/6654を使って計算せよ。
407132人目の素数さん
2020/04/24(金) 12:11:36.28ID:v55OWzbu >>401
95%CIで
> binom::binom.confint(4,67)
method x n mean lower upper
1 agresti-coull 4 67 0.05970149 0.019131154 0.1480232
2 asymptotic 4 67 0.05970149 0.002968439 0.1164345
3 bayes 4 67 0.06617647 0.015026904 0.1253507
4 cloglog 4 67 0.05970149 0.019283398 0.1337560
5 exact 4 67 0.05970149 0.016504404 0.1458632
6 logit 4 67 0.05970149 0.022588780 0.1485238
7 probit 4 67 0.05970149 0.020905075 0.1402573
8 profile 4 67 0.05970149 0.018970462 0.1332788
9 lrt 4 67 0.05970149 0.018929939 0.1332756
10 prop.test 4 67 0.05970149 0.019297952 0.1534709
11 wilson 4 67 0.05970149 0.023459351 0.1436950
95%CIで
> binom::binom.confint(4,67)
method x n mean lower upper
1 agresti-coull 4 67 0.05970149 0.019131154 0.1480232
2 asymptotic 4 67 0.05970149 0.002968439 0.1164345
3 bayes 4 67 0.06617647 0.015026904 0.1253507
4 cloglog 4 67 0.05970149 0.019283398 0.1337560
5 exact 4 67 0.05970149 0.016504404 0.1458632
6 logit 4 67 0.05970149 0.022588780 0.1485238
7 probit 4 67 0.05970149 0.020905075 0.1402573
8 profile 4 67 0.05970149 0.018970462 0.1332788
9 lrt 4 67 0.05970149 0.018929939 0.1332756
10 prop.test 4 67 0.05970149 0.019297952 0.1534709
11 wilson 4 67 0.05970149 0.023459351 0.1436950
408132人目の素数さん
2020/04/24(金) 17:39:04.40ID:8oiI190P409132人目の素数さん
2020/04/24(金) 17:42:10.16ID:v55OWzbu >>404
ラテン方陣の問題?
ラテン方陣の問題?
410132人目の素数さん
2020/04/24(金) 20:48:11.94ID:v55OWzbu >>403
事前分布にJefferey分布を使っているな。
https://i.imgur.com/m7kdY8Z.png
破線が事前分布、実戦が事後分布
curve(dbeta(x,0.5+4,0.5+67-4),bty='l',xlab='probability',ylab='density')
curve(dbeta(x,0.5,0.5),add=T,lty=2)
事前分布にJefferey分布を使っているな。
https://i.imgur.com/m7kdY8Z.png
破線が事前分布、実戦が事後分布
curve(dbeta(x,0.5+4,0.5+67-4),bty='l',xlab='probability',ylab='density')
curve(dbeta(x,0.5,0.5),add=T,lty=2)
411132人目の素数さん
2020/04/24(金) 20:55:16.38ID:v55OWzbu >>410
青実線が事前分布を一様分布(Beta(1,1))としたとき。
https://i.imgur.com/qUF1Fue.png
Jeffereyの方が95%CI幅が小さいな。
> binom::binom.bayes(4,67,prior.shape1 = 0.5,prior.shape2 = 0.5)
method x n shape1 shape2 mean lower upper sig
1 bayes 4 67 4.5 63.5 0.06617647 0.0150269 0.1253507 0.04999999
> binom::binom.bayes(4,67,prior.shape1 = 1, prior.shape2 = 1)
method x n shape1 shape2 mean lower upper sig
1 bayes 4 67 5 64 0.07246377 0.01876916 0.1338218 0.04999999
青実線が事前分布を一様分布(Beta(1,1))としたとき。
https://i.imgur.com/qUF1Fue.png
Jeffereyの方が95%CI幅が小さいな。
> binom::binom.bayes(4,67,prior.shape1 = 0.5,prior.shape2 = 0.5)
method x n shape1 shape2 mean lower upper sig
1 bayes 4 67 4.5 63.5 0.06617647 0.0150269 0.1253507 0.04999999
> binom::binom.bayes(4,67,prior.shape1 = 1, prior.shape2 = 1)
method x n shape1 shape2 mean lower upper sig
1 bayes 4 67 5 64 0.07246377 0.01876916 0.1338218 0.04999999
412132人目の素数さん
2020/04/24(金) 21:13:10.41ID:v55OWzbu >>401
https://georgebest1969.typepad.jp/blog/2020/04/%E6%85%B6%E5%BF%9C%E3%81%AEpcr6%E3%81%AE%E6%84%8F%E5%91%B3.html
に準じて 東京都民の1395万人に当てはめると
> data.frame(method=ci[,1],round(ci[,4:6]*pop))
method mean lower upper
1 agresti-coull 832836 266880 2064924
2 asymptotic 832836 41410 1624262
3 bayes 923162 209625 1748642
4 cloglog 832836 269003 1865896
5 exact 832836 230236 2034792
6 logit 832836 315113 2071907
7 probit 832836 291626 1956590
8 profile 832836 264638 1859240
9 lrt 832836 264073 1859195
10 prop.test 832836 269206 2140919
11 wilson 832836 327258 2004545
岩田の計算は
5 exact 832836 230236 2034792
https://georgebest1969.typepad.jp/blog/2020/04/%E6%85%B6%E5%BF%9C%E3%81%AEpcr6%E3%81%AE%E6%84%8F%E5%91%B3.html
に準じて 東京都民の1395万人に当てはめると
> data.frame(method=ci[,1],round(ci[,4:6]*pop))
method mean lower upper
1 agresti-coull 832836 266880 2064924
2 asymptotic 832836 41410 1624262
3 bayes 923162 209625 1748642
4 cloglog 832836 269003 1865896
5 exact 832836 230236 2034792
6 logit 832836 315113 2071907
7 probit 832836 291626 1956590
8 profile 832836 264638 1859240
9 lrt 832836 264073 1859195
10 prop.test 832836 269206 2140919
11 wilson 832836 327258 2004545
岩田の計算は
5 exact 832836 230236 2034792
413132人目の素数さん
2020/04/24(金) 21:35:58.21ID:v55OWzbu >>402
感度30-70%(最頻値0.5,標準偏差0.2のβ分布),特異度(最頻値0.9 標準偏差0.05のβ分布)に設定。
有病率の事前分布は0-1の一様分布にして
MCMCしてみると
https://i.imgur.com/VfDTj51.png
という結果になった。
有病率の信頼区間は広すぎw
mean lower upper
0.22346412787 0.00000002913 0.83202346988
感度30-70%(最頻値0.5,標準偏差0.2のβ分布),特異度(最頻値0.9 標準偏差0.05のβ分布)に設定。
有病率の事前分布は0-1の一様分布にして
MCMCしてみると
https://i.imgur.com/VfDTj51.png
という結果になった。
有病率の信頼区間は広すぎw
mean lower upper
0.22346412787 0.00000002913 0.83202346988
414132人目の素数さん
2020/04/24(金) 21:50:22.59ID:v55OWzbu415132人目の素数さん
2020/04/24(金) 22:01:25.57ID:v55OWzbu >>413
事前分布をJeffereyにしたら、
> js=PCRj4(67,4,SEN=0.5,SD1=0.2,SPC=0.9,SD2=0.1,N.ITER=1e6)$js
mean lower upper
1.4972e-01 6.3120e-14 8.5733e-01
> summary(prev)
Min. 1st Qu. Median Mean 3rd Qu. Max.
0.0000 0.0111 0.0472 0.1497 0.1442 1.0000
> density(prev)$x[which.max(density(prev)$y)] # mode
[1] 0.0032278
事前分布をJeffereyにしたら、
> js=PCRj4(67,4,SEN=0.5,SD1=0.2,SPC=0.9,SD2=0.1,N.ITER=1e6)$js
mean lower upper
1.4972e-01 6.3120e-14 8.5733e-01
> summary(prev)
Min. 1st Qu. Median Mean 3rd Qu. Max.
0.0000 0.0111 0.0472 0.1497 0.1442 1.0000
> density(prev)$x[which.max(density(prev)$y)] # mode
[1] 0.0032278
416132人目の素数さん
2020/04/24(金) 22:03:05.10ID:v55OWzbu >>415
この最頻値はオーストリアの0.3%という値に等しいな。
この最頻値はオーストリアの0.3%という値に等しいな。
417132人目の素数さん
2020/04/24(金) 23:51:07.95ID:v55OWzbu >>415
Jeffreys が正しいスペリングみたい。 Jefferey'sかと思っていた。
Jeffreys が正しいスペリングみたい。 Jefferey'sかと思っていた。
418132人目の素数さん
2020/04/25(土) 13:54:43.50ID:R/UD6QQG 某医療センターでは治療後、2回連続してPCR検査陰性であれば退院させているとする。
PCR検査は
感度0.3~0.7 : β分布(2.625,2.625)相当
特異度 0.95~1.0 : β分布(26.5014,2.3422)相当
有病率は一様分布として
2回連続してPCR検査陰性の患者の有病率の期待値を求めよ。
2回連続検査陰性の患者が感染者である確率と有病率との関係をグラフにしてみた。
灰色点線は95%信頼区間
https://i.imgur.com/2U5HBmb.png
PCR検査は
感度0.3~0.7 : β分布(2.625,2.625)相当
特異度 0.95~1.0 : β分布(26.5014,2.3422)相当
有病率は一様分布として
2回連続してPCR検査陰性の患者の有病率の期待値を求めよ。
2回連続検査陰性の患者が感染者である確率と有病率との関係をグラフにしてみた。
灰色点線は95%信頼区間
https://i.imgur.com/2U5HBmb.png
419132人目の素数さん
2020/04/25(土) 17:53:16.00ID:MKtk31sc420132人目の素数さん
2020/04/26(日) 21:43:36.22ID:0lgRXnyr スレチですが統計に詳しい方がいると思って伺いました。
工学系の大学院生で論文を読んでて、見慣れない記号や数式が出てきたので質問させてください。
この数式中のEは何を意味するのでしょうか?
Rの期待値的なものですか?
https://i.imgur.com/oVwva8r.jpg
工学系の大学院生で論文を読んでて、見慣れない記号や数式が出てきたので質問させてください。
この数式中のEは何を意味するのでしょうか?
Rの期待値的なものですか?
https://i.imgur.com/oVwva8r.jpg
421132人目の素数さん
2020/04/27(月) 02:54:57.87ID:cS0ISst+ 院生でわからないってマジか
専門外の機械学習いきなりやらされたのかな?
専門外の機械学習いきなりやらされたのかな?
422132人目の素数さん
2020/04/27(月) 06:45:22.65ID:S7AmHM83 有病率が0.3%(オーストリアの無作為抽出)や6%(慶応大学の入院患者無作為抽出)のときは
感度30〜70% 特異度90〜100%のPCR検査キットでは
陰性的中率は
オーストリアの例では 95%[87%〜99%]
慶応の例では 94%[86〜99%]になる。
すべて陰性にでる中国のイカサマキットなら
陰性的中率は
オーストリアの例では99.7%
慶応の例では94%になる。
有病率が10%くらいになればイカカマキットの方が陰性的中率の成績が劣る。
感度30〜70% 特異度90〜100%のPCR検査キットでは
陰性的中率は
オーストリアの例では 95%[87%〜99%]
慶応の例では 94%[86〜99%]になる。
すべて陰性にでる中国のイカサマキットなら
陰性的中率は
オーストリアの例では99.7%
慶応の例では94%になる。
有病率が10%くらいになればイカカマキットの方が陰性的中率の成績が劣る。
423132人目の素数さん
2020/04/27(月) 07:30:42.68ID:S7AmHM83 某医療センターでは治療後、2回連続してPCR検査陰性であれば退院させているとする。
PCR検査は
感度0.3~0.7 : β分布(2.625,2.625)相当
特異度 0.95~1.0 : β分布(26.5014,2.3422)相当
として
n回連続して陰性であれば退院とするとどれくらいの感染者が野に放たれるかを
有病率(=検査前確率)を変化させてグラフにしてみた。
https://i.imgur.com/fvNvXhX.png
PCR検査は
感度0.3~0.7 : β分布(2.625,2.625)相当
特異度 0.95~1.0 : β分布(26.5014,2.3422)相当
として
n回連続して陰性であれば退院とするとどれくらいの感染者が野に放たれるかを
有病率(=検査前確率)を変化させてグラフにしてみた。
https://i.imgur.com/fvNvXhX.png
424132人目の素数さん
2020/04/28(火) 10:03:02.25ID:/p2virDs https://www.researchgate.net/publication/340869568_Saliva_Sample_as_a_Non-Invasive_Specimen_for_the_Diagnosis_of_Coronavirus_Disease-2019_COVID-19_a_Cross-Sectional_Study/link/5ea19006458515ec3aff8f36/download
https://i.imgur.com/3GWmZz3.png
に有病率の低い群で行った唾液と鼻咽頭スワッブ200例のcross-section tableがあったので
これでKappa係数とPABAK(prevalence ad-justed bias adjusted kappa)とその信頼区間をstanのMCMCで出してみた。
swabと唾液でまあ、結果が合致している。
> print(fit.kappa,pars=c('kappa','PABAK'))
Inference for Stan model: kappa.
4 chains, each with iter=2000; warmup=1000; thin=1;
post-warmup draws per chain=1000, total post-warmup draws=4000.
mean se_mean sd 2.5% 25% 50% 75% 97.5% n_eff Rhat
kappa 0.81 0 0.07 0.65 0.77 0.81 0.86 0.92 3540 1
PABAK 0.93 0 0.02 0.88 0.92 0.93 0.95 0.97 3342 1
JAGSでMCMCしてもほぼ同じ結果。
https://i.imgur.com/XKT53Fy.png
https://i.imgur.com/3GWmZz3.png
に有病率の低い群で行った唾液と鼻咽頭スワッブ200例のcross-section tableがあったので
これでKappa係数とPABAK(prevalence ad-justed bias adjusted kappa)とその信頼区間をstanのMCMCで出してみた。
swabと唾液でまあ、結果が合致している。
> print(fit.kappa,pars=c('kappa','PABAK'))
Inference for Stan model: kappa.
4 chains, each with iter=2000; warmup=1000; thin=1;
post-warmup draws per chain=1000, total post-warmup draws=4000.
mean se_mean sd 2.5% 25% 50% 75% 97.5% n_eff Rhat
kappa 0.81 0 0.07 0.65 0.77 0.81 0.86 0.92 3540 1
PABAK 0.93 0 0.02 0.88 0.92 0.93 0.95 0.97 3342 1
JAGSでMCMCしてもほぼ同じ結果。
https://i.imgur.com/XKT53Fy.png
425132人目の素数さん
2020/04/28(火) 21:14:48.22ID:V+QD5qnX >>394
答えなくね?
答えなくね?
426132人目の素数さん
2020/04/29(水) 16:59:02.34ID:YhsQxAnp427132人目の素数さん
2020/04/29(水) 17:43:56.54ID:YhsQxAnp PCR検査は
感度0.3~0.7 : β分布(2.625,2.625)相当
特異度 0.95~1.0 : β分布(26.5014,2.3422)相当
として、
http://statmodeling.hatenablog.com/entry/covid19-estimate-total-number-of-positives-in-japan
の設定を踏襲して、利用できるデータを更新して
推定陽性率は
> summary(p.pos) ; HDInterval::hdi(p.pos)[1:2]
Min. 1st Qu. Median Mean 3rd Qu. Max.
0.000031 0.000067 0.004681 0.005229 0.009325 0.016658
lower upper
0.00003082 0.01408833
推定有病率は
> summary(prevalence) ; HDInterval::hdi(prevalence)[1:2]
Min. 1st Qu. Median Mean 3rd Qu. Max.
0.00000 0.00166 0.00529 0.01040 0.01129 0.16078
lower upper
0.0000005693 0.0305640211
感度0.3~0.7 : β分布(2.625,2.625)相当
特異度 0.95~1.0 : β分布(26.5014,2.3422)相当
として、
http://statmodeling.hatenablog.com/entry/covid19-estimate-total-number-of-positives-in-japan
の設定を踏襲して、利用できるデータを更新して
推定陽性率は
> summary(p.pos) ; HDInterval::hdi(p.pos)[1:2]
Min. 1st Qu. Median Mean 3rd Qu. Max.
0.000031 0.000067 0.004681 0.005229 0.009325 0.016658
lower upper
0.00003082 0.01408833
推定有病率は
> summary(prevalence) ; HDInterval::hdi(prevalence)[1:2]
Min. 1st Qu. Median Mean 3rd Qu. Max.
0.00000 0.00166 0.00529 0.01040 0.01129 0.16078
lower upper
0.0000005693 0.0305640211
428132人目の素数さん
2020/04/29(水) 18:02:18.86ID:FBYarVUq429132人目の素数さん
2020/04/29(水) 18:35:59.17ID:uFfpYtab rRT-PRC検査の感度・特異度ともに90%以上です。
430132人目の素数さん
2020/04/29(水) 19:40:54.19ID:uFfpYtab 通常の医療でも臨床診断の5%は誤診だと推定されていたりする。
これを実際の数として見積もると膨大になる。
これを実際の数として見積もると膨大になる。
431132人目の素数さん
2020/04/29(水) 20:37:12.66ID:YhsQxAnp432132人目の素数さん
2020/04/29(水) 20:38:43.26ID:YhsQxAnp433132人目の素数さん
2020/04/29(水) 20:39:49.12ID:YhsQxAnp >>427
このデータは再現性がないことがわかったので撤回します。
このデータは再現性がないことがわかったので撤回します。
434132人目の素数さん
2020/04/30(木) 10:01:57.70ID:42TM9o6B ふぉー
<新型コロナ>抗体検査5.9%陽性 市中感染の可能性 都内の希望者200人調査
https://www.tokyo-np.co.jp/s/article/2020043090070748.html
<新型コロナ>抗体検査5.9%陽性 市中感染の可能性 都内の希望者200人調査
https://www.tokyo-np.co.jp/s/article/2020043090070748.html
435132人目の素数さん
2020/04/30(木) 12:13:53.58ID:qOF+URFa >>434
"検査結果では、一般市民の百四十七人の4・8%にあたる七人が陽性、
医療従事者五十五人のうち9・1%の五人が陽性だった。
https://www.tokyo-np.co.jp/s/article/2020043090070748.html
"
> r1=5;r2=7;n1=55;n2=147
> prop.test(c(r1,r2),c(n1,n2))
2-sample test for equality of proportions with continuity
correction
data: c(r1, r2) out of c(n1, n2)
X-squared = 0.679, df = 1, p-value = 0.41
alternative hypothesis: two.sided
95 percent confidence interval:
-0.052613 0.139194
sample estimates:
prop 1 prop 2
0.090909 0.047619
Warning message:
In prop.test(c(r1, r2), c(n1, n2)) :
Chi-squared approximation may be incorrect
> poisson.test(c(r1,r2),c(n1,n2))
Comparison of Poisson rates
data: c(r1, r2) time base: c(n1, n2)
count1 = 5, expected count1 = 3.27, p-value = 0.33
alternative hypothesis: true rate ratio is not equal to 1
95 percent confidence interval:
0.47778 6.98763
sample estimates:
rate ratio
1.9091
"検査結果では、一般市民の百四十七人の4・8%にあたる七人が陽性、
医療従事者五十五人のうち9・1%の五人が陽性だった。
https://www.tokyo-np.co.jp/s/article/2020043090070748.html
"
> r1=5;r2=7;n1=55;n2=147
> prop.test(c(r1,r2),c(n1,n2))
2-sample test for equality of proportions with continuity
correction
data: c(r1, r2) out of c(n1, n2)
X-squared = 0.679, df = 1, p-value = 0.41
alternative hypothesis: two.sided
95 percent confidence interval:
-0.052613 0.139194
sample estimates:
prop 1 prop 2
0.090909 0.047619
Warning message:
In prop.test(c(r1, r2), c(n1, n2)) :
Chi-squared approximation may be incorrect
> poisson.test(c(r1,r2),c(n1,n2))
Comparison of Poisson rates
data: c(r1, r2) time base: c(n1, n2)
count1 = 5, expected count1 = 3.27, p-value = 0.33
alternative hypothesis: true rate ratio is not equal to 1
95 percent confidence interval:
0.47778 6.98763
sample estimates:
rate ratio
1.9091
436132人目の素数さん
2020/04/30(木) 19:13:48.86ID:42TM9o6B >>434
これの興味深いところは、陽性率の高さもさることながら、医療関係者の感染率が一般市民のそれよりも
(多分有意に)高いことだと思う。抗体検査の精度ってほとんどデータが無いに等しいけど、医療関係者の
感染者率が平均よりも多いのならば(実際そうなのだと思う)、このテストはそれを反映したものと言えて、
抗体検査の信頼性をある程度証明できるかもしれない。
そして、市中の陽性率の高さも。
この辺、ベイズで上手く検証できないかな。
これの興味深いところは、陽性率の高さもさることながら、医療関係者の感染率が一般市民のそれよりも
(多分有意に)高いことだと思う。抗体検査の精度ってほとんどデータが無いに等しいけど、医療関係者の
感染者率が平均よりも多いのならば(実際そうなのだと思う)、このテストはそれを反映したものと言えて、
抗体検査の信頼性をある程度証明できるかもしれない。
そして、市中の陽性率の高さも。
この辺、ベイズで上手く検証できないかな。
437132人目の素数さん
2020/04/30(木) 20:32:35.24ID:qOF+URFa >>436
>医療関係者の感染率が一般市民のそれよりも(多分有意に)高い
χ二乗検定では、p-value = 0.41 で 標本数が少ないから有意差がでない。
エントリーが5以下のときには信頼するなと習ったな。
まあ、ポアソンでもp-value = 0.33
>435にRの出力を貼っておいた。
>医療関係者の感染率が一般市民のそれよりも(多分有意に)高い
χ二乗検定では、p-value = 0.41 で 標本数が少ないから有意差がでない。
エントリーが5以下のときには信頼するなと習ったな。
まあ、ポアソンでもp-value = 0.33
>435にRの出力を貼っておいた。
438132人目の素数さん
2020/04/30(木) 20:35:20.83ID:rbz2947p439132人目の素数さん
2020/04/30(木) 20:41:39.46ID:rbz2947p 抗体検査キットの評価をしたら特異度はみな5/5だったらしいけど、サンプルが
5つだけって意味だとすると、せいぜい90%以上くらいのことしか言えないな。
特異度95%だとしたら、5%が陽性っていわれてもねぇw
5つだけって意味だとすると、せいぜい90%以上くらいのことしか言えないな。
特異度95%だとしたら、5%が陽性っていわれてもねぇw
440132人目の素数さん
2020/04/30(木) 21:20:01.97ID:qOF+URFa >>436
事前分布にかなり影響をうけるが、
感度特異度とも50-70%(最頻値60%標準偏差10%のβ分布),
有病率は一様分布、
検査陽性数は陽性確率が 有病率*感度+(1-有病率)*(1-特異度)の二項分布に従う
というモデルでプログラムを組むと
model
{
for(i in 1:N) {
x[i] ~ dbin(p,n[i])
}
p = prev*sen + (1-prev)*(1-spc)
PPV=sen*prev/(sen*prev+(1-prev)*(1-spc))
NPV=(1-prev)*spc/((1-prev)*spc+prev*(1-sen))
precision=(prev*sen+(1-prev)*spc)/
((prev*sen+(1-prev)*spc + (1-prev)*(1-spc)+(prev*(1-sen))))
pLR=sen/(1-spc)
nLR=(1-sen)/spc
DOR=pLR/nLR
sen ~ dbeta(sn[1],sn[2])
spc ~ dbeta(sp[1],sp[2])
prev ~ dbeta(shape1,shape2)
}
結果は、
https://i.imgur.com/eKXLUXZ.png
有病率の期待値は2.3%、最頻値は0.31% 少数データなので信頼区間が広い。
有病率が平均値50%の一様分布というのは現実離れした分布だとは思う。
事前分布にかなり影響をうけるが、
感度特異度とも50-70%(最頻値60%標準偏差10%のβ分布),
有病率は一様分布、
検査陽性数は陽性確率が 有病率*感度+(1-有病率)*(1-特異度)の二項分布に従う
というモデルでプログラムを組むと
model
{
for(i in 1:N) {
x[i] ~ dbin(p,n[i])
}
p = prev*sen + (1-prev)*(1-spc)
PPV=sen*prev/(sen*prev+(1-prev)*(1-spc))
NPV=(1-prev)*spc/((1-prev)*spc+prev*(1-sen))
precision=(prev*sen+(1-prev)*spc)/
((prev*sen+(1-prev)*spc + (1-prev)*(1-spc)+(prev*(1-sen))))
pLR=sen/(1-spc)
nLR=(1-sen)/spc
DOR=pLR/nLR
sen ~ dbeta(sn[1],sn[2])
spc ~ dbeta(sp[1],sp[2])
prev ~ dbeta(shape1,shape2)
}
結果は、
https://i.imgur.com/eKXLUXZ.png
有病率の期待値は2.3%、最頻値は0.31% 少数データなので信頼区間が広い。
有病率が平均値50%の一様分布というのは現実離れした分布だとは思う。
441132人目の素数さん
2020/04/30(木) 21:22:46.14ID:qOF+URFa442132人目の素数さん
2020/04/30(木) 21:33:35.19ID:qOF+URFa >55人中5人と147人中7人じゃ、有意差ないだろ。
その比率のまま、約4倍(3.87倍)になればχ二乗検定で有意差がでるね。
r1=5;r2=7;n1=55;n2=147
mat=matrix(c(r1,r2,n1,n2),2,b=T)
fn <- function(x) chisq.test(mat*x)$p.value
fn=Vectorize(fn)
uniroot(function(x) fn(x)-0.05,c(1,10))$root
fn(4)
> fn(4)
[1] 0.045678
その比率のまま、約4倍(3.87倍)になればχ二乗検定で有意差がでるね。
r1=5;r2=7;n1=55;n2=147
mat=matrix(c(r1,r2,n1,n2),2,b=T)
fn <- function(x) chisq.test(mat*x)$p.value
fn=Vectorize(fn)
uniroot(function(x) fn(x)-0.05,c(1,10))$root
fn(4)
> fn(4)
[1] 0.045678
443132人目の素数さん
2020/04/30(木) 21:47:02.48ID:qOF+URFa >>440(追記)
>有病率が平均値50%の一様分布というのは現実離れした分布だとは思う。
オーストリアのデータ0.3%を参考に有病率の事前分布が0.2-0.4%
β(10.865, 3279.34)に相当として、MCMCしてみた。
感度と特異度の事前分布は前回と同じ。
https://i.imgur.com/dHcOxsR.png
さほど、有病率が高いという結論は引き出せないな。
>有病率が平均値50%の一様分布というのは現実離れした分布だとは思う。
オーストリアのデータ0.3%を参考に有病率の事前分布が0.2-0.4%
β(10.865, 3279.34)に相当として、MCMCしてみた。
感度と特異度の事前分布は前回と同じ。
https://i.imgur.com/dHcOxsR.png
さほど、有病率が高いという結論は引き出せないな。
444132人目の素数さん
2020/04/30(木) 22:23:36.86ID:gdjT5b3G 自己流な検定
A群55人中5人とB群147人中7人に有意差はあるか?
モンテカルロ法で検証
A群もB群も同じ陽性率で、0.0594と仮定する
∵ 陽性率は、 12/(55+147) = 12/202 = 0.0594
モンテカルロ法100万回したら
B群の陽性者が7名となったのは、125238回
その内 A群の陽性が5名以上は、28293回
∴ P(55人中5人以上|147人中7人) = 28293/125238 = 0.226
∴ 有意差なし
EXCEL VBAソースコード概略
Dim I As Long
Dim J As Long
Dim K As Long
K = 1
For I = 1 To 1000000
A = 0
For J = 1 To 55
If Rnd(1) < 0.0594 Then '陽性
A = A + 1
End If
Next
B = 0
For J = 1 To 147
If Rnd(1) < 0.0594 Then '陽性
B = B + 1
End If
Next
If B = 7 Then 'B群の陽性者が7名の場合
Cells(K, "A") = A 'A群の陽性者の人数
K = K + 1
End If
B = 0
Next
A群55人中5人とB群147人中7人に有意差はあるか?
モンテカルロ法で検証
A群もB群も同じ陽性率で、0.0594と仮定する
∵ 陽性率は、 12/(55+147) = 12/202 = 0.0594
モンテカルロ法100万回したら
B群の陽性者が7名となったのは、125238回
その内 A群の陽性が5名以上は、28293回
∴ P(55人中5人以上|147人中7人) = 28293/125238 = 0.226
∴ 有意差なし
EXCEL VBAソースコード概略
Dim I As Long
Dim J As Long
Dim K As Long
K = 1
For I = 1 To 1000000
A = 0
For J = 1 To 55
If Rnd(1) < 0.0594 Then '陽性
A = A + 1
End If
Next
B = 0
For J = 1 To 147
If Rnd(1) < 0.0594 Then '陽性
B = B + 1
End If
Next
If B = 7 Then 'B群の陽性者が7名の場合
Cells(K, "A") = A 'A群の陽性者の人数
K = K + 1
End If
B = 0
Next
445132人目の素数さん
2020/04/30(木) 23:17:24.52ID:qOF+URFa β分布と乱数発生で比較。
一般人と医療従事者の確率分布に従う乱数を1000万個発生させて比率の分布をグラフにすると
95%信頼区間が1を挟むから有意差なし。比率が1以上となる確率も87.5%で95%を越えないから有意差なし。
https://i.imgur.com/8zFKODI.png
a=0.5 ; b=0.5
r1=5 ; r2=7 ; n1=55 ; n2=147
layout(1)
layout(matrix(1:2,2))
curve(dbeta(x,a+r2,b+n2-r2),0,0.3,bty='l',ann=F,lwd=2)
curve(dbeta(x,a+r1,b+n1-r1),col=2,add=T,lwd=2)
legend('center',bty='n',legend=c('general','medical'),lwd=2,col=1:2)
k=1e7
general=rbeta(k,a+r2,b+n2-r2)
medical=rbeta(k,a+r1,b+n1-r1)
BEST::plotPost(medical/general,compVal = 1)
一般人と医療従事者の確率分布に従う乱数を1000万個発生させて比率の分布をグラフにすると
95%信頼区間が1を挟むから有意差なし。比率が1以上となる確率も87.5%で95%を越えないから有意差なし。
https://i.imgur.com/8zFKODI.png
a=0.5 ; b=0.5
r1=5 ; r2=7 ; n1=55 ; n2=147
layout(1)
layout(matrix(1:2,2))
curve(dbeta(x,a+r2,b+n2-r2),0,0.3,bty='l',ann=F,lwd=2)
curve(dbeta(x,a+r1,b+n1-r1),col=2,add=T,lwd=2)
legend('center',bty='n',legend=c('general','medical'),lwd=2,col=1:2)
k=1e7
general=rbeta(k,a+r2,b+n2-r2)
medical=rbeta(k,a+r1,b+n1-r1)
BEST::plotPost(medical/general,compVal = 1)
446132人目の素数さん
2020/05/01(金) 00:36:14.80ID:LcUyF6Tc >>441
すべてが陰性に出るなら陽性は0人だろw
すべてが陰性に出るなら陽性は0人だろw
447132人目の素数さん
2020/05/01(金) 07:22:53.22ID:LJVZP1pw >>446
偽陽性率0%だから特異度は100%
偽陽性率0%だから特異度は100%
448132人目の素数さん
2020/05/01(金) 10:05:01.58ID:LcUyF6Tc >>447
だから、陽性が何人か出てんだから感度0%のインチキじゃなかろうってこと。
だから、陽性が何人か出てんだから感度0%のインチキじゃなかろうってこと。
449132人目の素数さん
2020/05/04(月) 00:17:48.34ID:Q8iLGwO2 最近の報道
インドは、中国企業から購入した中共ウイルス(新型コロナウイルス)の迅速スクリーニング検査キットの精度がわずか5%だとして、約50万個の注文をキャンセルした。
....
神戸市中央区にある市立医療センター中央市民病院の医師などのグループは、ことし3月末から先月7日にかけて、新型コロナウイルス以外の理由で外来を受診した患者から無作為に1000人を選び、血液中に新型コロナウイルスに感染したあとにできる「抗体」があるか調べました。
グループによりますとその結果、3.3%にあたる33人から抗体が検出されたということです。
以上を知ったある会社が
必ず陽性がでる試薬33個と必ず陰性がでる試薬967個を混ぜた1000試薬をセットにしてインドに売り込んだ。
問題
1試薬は1回しか検査できないとして
これがイカサマキットであることを証明する手段はあるか?
インドは、中国企業から購入した中共ウイルス(新型コロナウイルス)の迅速スクリーニング検査キットの精度がわずか5%だとして、約50万個の注文をキャンセルした。
....
神戸市中央区にある市立医療センター中央市民病院の医師などのグループは、ことし3月末から先月7日にかけて、新型コロナウイルス以外の理由で外来を受診した患者から無作為に1000人を選び、血液中に新型コロナウイルスに感染したあとにできる「抗体」があるか調べました。
グループによりますとその結果、3.3%にあたる33人から抗体が検出されたということです。
以上を知ったある会社が
必ず陽性がでる試薬33個と必ず陰性がでる試薬967個を混ぜた1000試薬をセットにしてインドに売り込んだ。
問題
1試薬は1回しか検査できないとして
これがイカサマキットであることを証明する手段はあるか?
450132人目の素数さん
2020/05/04(月) 15:22:29.91ID:jDRWX2Ph 3月の宿題で(1)のみ正解の数弱@shukudai_sujaku
昨年度の大学への数学(大数)での勝率は、
学コンBコースが 1/1 = 100% ,
宿題が 3/10 = 30% でした!
宿題の勝率が低すぎると思うので、
これからは一層精進していきたいです!
https://twitter.com/shukudai_sujaku
https://twitter.com/5chan_nel (5ch newer account)
昨年度の大学への数学(大数)での勝率は、
学コンBコースが 1/1 = 100% ,
宿題が 3/10 = 30% でした!
宿題の勝率が低すぎると思うので、
これからは一層精進していきたいです!
https://twitter.com/shukudai_sujaku
https://twitter.com/5chan_nel (5ch newer account)
451132人目の素数さん
2020/05/04(月) 22:45:28.89ID:94tg6i4k452132人目の素数さん
2020/05/05(火) 06:07:12.42ID:ht6rG86e https://toyokeizai.net/sp/visual/tko/covid19/
のデータを使って
P=14895/153581 # 2020/05/04
PCR検査の感度30-70%のモデルM1と感度70-90%のモデルM2のどちらが信憑性があるか、ベイズファクターで計算してみる。
M1は感度が最頻値60%標準偏差10%、M2は最頻値80%標準偏差10%のベータ分布に設定
特異度はいずれも最頻値95%標準偏差2.5%に設定し、有病率は一様分布を仮定
陽性数は、陽性率(P)=真陽性率+偽陽性率=有病率=有病率*感度 + (1-有病率)*(1-特異度)の二項分布に従うとする。
事後確率分布は
https://i.imgur.com/81bK4KE.png
陽性率P=14895/153581=0.09698465での事後確率分布の密度比(Savage-Dickey density ratio)でベイズファクターを出すと
> d1/d2 # Savage-Dickey densiti ratio = BF12
[1] 1.007722
まあ、ちょっぴり、感度30-70%のモデルの方がいいかも、という結果。
陽性数/検査数の時系列データでもあればもう少し差がでるかもしれん。
東京都のデータで計算させようかと思ったが、東京都は検査人数を隠蔽しているので使いものにならない。
のデータを使って
P=14895/153581 # 2020/05/04
PCR検査の感度30-70%のモデルM1と感度70-90%のモデルM2のどちらが信憑性があるか、ベイズファクターで計算してみる。
M1は感度が最頻値60%標準偏差10%、M2は最頻値80%標準偏差10%のベータ分布に設定
特異度はいずれも最頻値95%標準偏差2.5%に設定し、有病率は一様分布を仮定
陽性数は、陽性率(P)=真陽性率+偽陽性率=有病率=有病率*感度 + (1-有病率)*(1-特異度)の二項分布に従うとする。
事後確率分布は
https://i.imgur.com/81bK4KE.png
陽性率P=14895/153581=0.09698465での事後確率分布の密度比(Savage-Dickey density ratio)でベイズファクターを出すと
> d1/d2 # Savage-Dickey densiti ratio = BF12
[1] 1.007722
まあ、ちょっぴり、感度30-70%のモデルの方がいいかも、という結果。
陽性数/検査数の時系列データでもあればもう少し差がでるかもしれん。
東京都のデータで計算させようかと思ったが、東京都は検査人数を隠蔽しているので使いものにならない。
453132人目の素数さん
2020/05/05(火) 06:26:36.20ID:FpoKo6a+ 訂正
陽性数は、陽性率(P)=真陽性率+偽陽性率=有病率=有病率*感度 + (1-有病率)*(1-特異度)の二項分布に従うとする
↓
陽性数は、陽性率(P)=真陽性率+偽陽性率=有病率*感度 + (1-有病率)*(1-特異度)の二項分布に従うとする
陽性数は、陽性率(P)=真陽性率+偽陽性率=有病率=有病率*感度 + (1-有病率)*(1-特異度)の二項分布に従うとする
↓
陽性数は、陽性率(P)=真陽性率+偽陽性率=有病率*感度 + (1-有病率)*(1-特異度)の二項分布に従うとする
454132人目の素数さん
2020/05/05(火) 11:13:29.85ID:b2IqdVzK 3月の宿題で(1)のみ正解の数弱@shukudai_sujaku
昨年度の大学への数学(大数)での勝率は、
学コンBコースが 1/1 = 100% ,
宿題が 3/10 = 30% でした!
宿題の勝率が低すぎると思うので、
これからは一層精進していきたいです!
https://twitter.com/shukudai_sujaku
https://twitter.com/5chan_nel (5ch newer account)
昨年度の大学への数学(大数)での勝率は、
学コンBコースが 1/1 = 100% ,
宿題が 3/10 = 30% でした!
宿題の勝率が低すぎると思うので、
これからは一層精進していきたいです!
https://twitter.com/shukudai_sujaku
https://twitter.com/5chan_nel (5ch newer account)
455132人目の素数さん
2020/05/05(火) 23:00:17.52ID:wvtmzVA1456132人目の素数さん
2020/05/06(水) 15:29:26.96ID:RG00+xls イカサマキットの感度特異度の事前分布を一様分布に設定して
抗体のはいったサンプルを20個で全部陰性であったので30個試したら全部陰性であったとすると
感度・特異度の事後分布は
https://i.imgur.com/6ZYn34k.png
抗体のはいったサンプルを20個で全部陰性であったので30個試したら全部陰性であったとすると
感度・特異度の事後分布は
https://i.imgur.com/6ZYn34k.png
457132人目の素数さん
2020/05/06(水) 15:32:34.43ID:RG00+xls458132人目の素数さん
2020/05/06(水) 15:52:13.78ID:RG00+xls459132人目の素数さん
2020/05/06(水) 15:58:11.98ID:RG00+xls >>458
ベータ分布の理論値
> HDInterval::hdi(qbeta,shape1=5,shape2=8)[1:2]
lower upper
0.1406542 0.6377277
> 5/(5+8) # mean
[1] 0.3846154
> (5-1)/(5-1+8-1) # mode
[1] 0.3636364
ベータ分布の理論値
> HDInterval::hdi(qbeta,shape1=5,shape2=8)[1:2]
lower upper
0.1406542 0.6377277
> 5/(5+8) # mean
[1] 0.3846154
> (5-1)/(5-1+8-1) # mode
[1] 0.3636364
460132人目の素数さん
2020/05/06(水) 16:25:45.53ID:RG00+xls461132人目の素数さん
2020/05/06(水) 17:08:09.44ID:tNZVV9ZH >>456
感度が5%以下じゃつかいもんにならんわなぁ。インチキで確定。
感度が5%以下じゃつかいもんにならんわなぁ。インチキで確定。
462132人目の素数さん
2020/05/06(水) 23:23:13.55ID:wABsYddm https://www.buzzfeed.com/jp/naokoiwanaga/covid-19-antibody-test
大阪市立大学が一昨年の血液を使って検査したところ、偽陽性は1人もいなかったそうだ。
大阪市立大学が一昨年の血液を使って検査したところ、偽陽性は1人もいなかったそうだ。
463132人目の素数さん
2020/05/07(木) 00:59:54.31ID:0vbdeA0/ >>462
>2020年4月中の2日間に同大学の付属病院を、新型コロナウイルス感染症の診療以外で受診した
>患者を対象に、そこから無作為に312人を抽出・・・・312 人(年齢中央値 66.5 歳、
>男性:女性=154:158)のうち、3人が陽性であることがわかった。約1%の陽性率だ。
>統計的な誤差を考慮すると、95%の確率で0.33〜2.8%の間に入る・・・・・・・・・・・・
教えてエロい人
Q1統計的推定を述べるなら「95%の確率で」でなく「信頼率95%で」と書くのが適切ではないか?
Q2無作為抽出陽性率3/312=0.96%の母集団陽性率上側/下側信頼区間=0.96-0.33/2.80-0.96と
上側区間≠下側区間で左右非対称分布想定は何故?
Q3サンプルサイズ312は過少では?過少に伴う推定誤差加算が必要では?
>2020年4月中の2日間に同大学の付属病院を、新型コロナウイルス感染症の診療以外で受診した
>患者を対象に、そこから無作為に312人を抽出・・・・312 人(年齢中央値 66.5 歳、
>男性:女性=154:158)のうち、3人が陽性であることがわかった。約1%の陽性率だ。
>統計的な誤差を考慮すると、95%の確率で0.33〜2.8%の間に入る・・・・・・・・・・・・
教えてエロい人
Q1統計的推定を述べるなら「95%の確率で」でなく「信頼率95%で」と書くのが適切ではないか?
Q2無作為抽出陽性率3/312=0.96%の母集団陽性率上側/下側信頼区間=0.96-0.33/2.80-0.96と
上側区間≠下側区間で左右非対称分布想定は何故?
Q3サンプルサイズ312は過少では?過少に伴う推定誤差加算が必要では?
464132人目の素数さん
2020/05/07(木) 02:09:04.11ID:VnQvkZ57 >>463
Wilsonの式を使ったんだろうね。
method x n mean lower upper
1 agresti-coull 3 312 0.0096 0.0019 0.029
2 asymptotic 3 312 0.0096 -0.0012 0.020
3 bayes 3 312 0.0112 0.0016 0.023
4 cloglog 3 312 0.0096 0.0027 0.026
5 exact 3 312 0.0096 0.0020 0.028
6 logit 3 312 0.0096 0.0031 0.029
7 probit 3 312 0.0096 0.0029 0.027
8 profile 3 312 0.0096 0.0024 0.025
9 lrt 3 312 0.0096 0.0024 0.025
10 prop.test 3 312 0.0096 0.0025 0.030
11 wilson 3 312 0.0096 0.0033 0.028
https://ja.wikipedia.org/wiki/%E3%82%A6%E3%82%A3%E3%83%AB%E3%82%BD%E3%83%B3%E3%81%AE%E4%BF%A1%E9%A0%BC%E5%8C%BA%E9%96%93
Wilsonの式を使ったんだろうね。
method x n mean lower upper
1 agresti-coull 3 312 0.0096 0.0019 0.029
2 asymptotic 3 312 0.0096 -0.0012 0.020
3 bayes 3 312 0.0112 0.0016 0.023
4 cloglog 3 312 0.0096 0.0027 0.026
5 exact 3 312 0.0096 0.0020 0.028
6 logit 3 312 0.0096 0.0031 0.029
7 probit 3 312 0.0096 0.0029 0.027
8 profile 3 312 0.0096 0.0024 0.025
9 lrt 3 312 0.0096 0.0024 0.025
10 prop.test 3 312 0.0096 0.0025 0.030
11 wilson 3 312 0.0096 0.0033 0.028
https://ja.wikipedia.org/wiki/%E3%82%A6%E3%82%A3%E3%83%AB%E3%82%BD%E3%83%B3%E3%81%AE%E4%BF%A1%E9%A0%BC%E5%8C%BA%E9%96%93
465132人目の素数さん
2020/05/07(木) 02:30:17.69ID:VnQvkZ57 Wilsonの式での95%信頼区間幅を1%以内にしたいなら
サンプルサイズは38411が必要という計算になった。
Rでの算出プログラム
library(binom)
x=3
n=312
binom.wilson(x,n)
fn <- function(n){
x=0:n
l=binom.wilson(x,n)[,5]
u=binom.wilson(x,n)[,6]
max(u-l)
}
fn=Vectorize(fn)
n=seq(1000,50000,by=1000)
plot(n,fn(n))
abline(h=0.01,lty=3)
uniroot(function(x,u0=0.01) fn(x)-u0, c(10000,50000))
サンプルサイズは38411が必要という計算になった。
Rでの算出プログラム
library(binom)
x=3
n=312
binom.wilson(x,n)
fn <- function(n){
x=0:n
l=binom.wilson(x,n)[,5]
u=binom.wilson(x,n)[,6]
max(u-l)
}
fn=Vectorize(fn)
n=seq(1000,50000,by=1000)
plot(n,fn(n))
abline(h=0.01,lty=3)
uniroot(function(x,u0=0.01) fn(x)-u0, c(10000,50000))
466132人目の素数さん
2020/05/07(木) 17:10:06.19ID:CHL0/p02467132人目の素数さん
2020/05/07(木) 18:13:41.63ID:VnQvkZ57 >>466
95%信頼区間の下限境界は
事前分布をJeffreysで
> qbeta(0.95,0.5+50,0.5,lower=F)
[1] 0.9624989
事前分布を一様分布で
> qbeta(0.95,1+50,1,lower=F)
[1] 0.942952
95%信頼区間の下限境界は
事前分布をJeffreysで
> qbeta(0.95,0.5+50,0.5,lower=F)
[1] 0.9624989
事前分布を一様分布で
> qbeta(0.95,1+50,1,lower=F)
[1] 0.942952
468132人目の素数さん
2020/05/07(木) 18:52:47.08ID:VnQvkZ57 特異度の95%の信頼区間の下限値を0.99にするのに必要なサンプルサイズは
事前分布を一様分布で
> uniroot(function(x) fn(x)-0.99, c(100,500))$root
[1] 297.0728
Jeffreysで
> uniroot(function(x) fn(x,0.5,0.5)-0.99, c(100,500))$root
[1] 190.8606
fn <- function(x,shape1=1,shape2=1){
qbeta(0.95,shape1 + x, shape2, lower=F)
}
n=50:500
plot(n,fn(n),type='l', ylab='95%CI.lower')
abline(h=0.99,lty=3)
uniroot(function(x) fn(x)-0.99, c(100,500))$root
uniroot(function(x) fn(x,0.5,0.5)-0.99, c(100,500))$root
事前分布を一様分布で
> uniroot(function(x) fn(x)-0.99, c(100,500))$root
[1] 297.0728
Jeffreysで
> uniroot(function(x) fn(x,0.5,0.5)-0.99, c(100,500))$root
[1] 190.8606
fn <- function(x,shape1=1,shape2=1){
qbeta(0.95,shape1 + x, shape2, lower=F)
}
n=50:500
plot(n,fn(n),type='l', ylab='95%CI.lower')
abline(h=0.99,lty=3)
uniroot(function(x) fn(x)-0.99, c(100,500))$root
uniroot(function(x) fn(x,0.5,0.5)-0.99, c(100,500))$root
■ このスレッドは過去ログ倉庫に格納されています