いろいろなことを考察する

SIR モデルを計算できるスプレッドシート


私がネット上でしていることの まとめ は、こちらに。
https://sarkov28.hatenablog.com/entry/2022/03/29/160915
python による計算については、こちらに。
https://sarkov28.hatenablog.com/entry/2022/04/01/201503



を公開しています。
ブラウザ上で計算し、グラフを表示するので、ブラウザさえあればよく、Excel などの表計算ソフトをインストールする必要はありません。
「42万死亡推計」も再現できます。

見るだけなら何も要りません。
gmail のアカウントがあれば、

  • 基本再生産数、
  • 接触削減日、
  • 接触削減率、

などを変更することもできます。

使用しているのは四則演算と、スプレッドシートのセルに入れる "=A1+A2" のような計算式だけです。
python を使った、より精度がいいと思われる方法と計算結果を比較し、スプレッドシートでの計算結果が割と良い精度で西浦氏の計算を再現していることを確認しています。
この他に「(インストール不要で)SIR モデルを計算できるスクリプト」として、SIR モデルを python で計算するもの も公開しています。

私は、以前から西浦氏のグラフの問題を指摘しています。
特に、こちら https://twitter.com/sarkov28/status/1350101975753318405 の連ツイに書いた、私が個人的に「量産型」と名付けている一群のグラフの誤りは特に大きな問題です。

この誤りは「国民向けの説明グラフが誤っていただけの問題」ではありません。
したがって「間違ったグラフだけ修正すれば済む問題」ではありません。
はるかに深刻であり「社会に大きな影響を与えた「接触8割減」政策の論理的根拠が間違っていたという問題」です。(この論点は、(その4) で述べる予定ですが、既に (その1)「(2)細かな説明」タブの (2-3) で同型の問題を指摘しています。)

上の連ツイで「西浦氏は間違っている」と指摘したグラフの幾つかも、スプレッドシートで再現しているので、西浦氏が間違っているという私の主張を、スプレッドシート上でご確認頂けます。

公開しているスプレッドシートは以下です。
元のグラフが公開された日付の順に並べてあります。


目次


(使い方)パラメータなどの変更方法

スプレッドシートのパラメータなどの変更方法です。

グーグル スプレッドシートを自分の google drive にコピーすれば(=やり方は こちら、パラメータなどを改変し、そのパラメータでのグラフを表示させることもできます。


[2020-04-03 a] スプレッドシートを使った新型コロナ感染シミュレーション(その3)

スプレッドシートを使った新型コロナ感染シミュレーション(その3)です。

2020-04-03 の日経記事 「「欧米に近い外出制限を」 西浦博教授が感染者試算」のグラフと、そのスプレッドシートによる再現

2020-04-03 の日経記事 「「欧米に近い外出制限を」 西浦博教授が感染者試算」
https://www.nikkei.com/article/DGXMZO57610560T00C20A4MM0000
で示されているグラフを再現します。
(これは、「「接触8割減」が必要だ」という旨を最初に報じた記事です。)

スプレッドシートはこちらです。
https://docs.google.com/spreadsheets/d/1EvcTNXrnoGroP83Xu1HYPie8TywHXyNG3tglhJw9pPM/edit?usp=sharing

関連する python による再現計算はこちらです。
https://colab.research.google.com/drive/1WHYEG-BBzo_UfNw3D_9Nr4EaksXzTflf?usp=sharing


細かな説明はスプレッドシートに書いてありますが、概略をこちら
https://twitter.com/sarkov28/status/1650112137120067584
に書きました。

このグラフに特段の問題はないのですが、重要なグラフなので再現しました。

これはスプレッドシートでも確認できるように新規感染者数のグラフです。
そして「接触削減直後の急激な(垂直に見える)下落」があります。
この「垂直に見える下落」という特徴の有無は、西浦氏のグラフを見る時の重要なポイントになります。


[2020-04-11 a] スプレッドシートを使った新型コロナ感染シミュレーション(その1)

スプレッドシートを使った新型コロナ感染シミュレーション(その1)です。

2020-04-11 の日経記事 「「接触7割減」では収束まで長期化 北大教授が警鐘」のグラフと、そのスプレッドシートによる再現

2020-04-11 の日経記事 「「接触7割減」では収束まで長期化 北大教授が警鐘」
https://www.nikkei.com/article/DGXMZO57961860R10C20A4CZ8000
で示されているグラフを再現します。

スプレッドシートはこちらです。
https://docs.google.com/spreadsheets/d/1UvP5HTo7aTeFuEbFuwSwTKjkwVBLJKvNkMKfJzkKAsc/edit?usp=sharing

関連する python による再現計算はこちらです。
https://colab.research.google.com/drive/1Xd1RvUKjpYiVuiMgXrx9AJOiq-TdHqbX?usp=sharing

細かな説明はスプレッドシートに書いてありますが、概略をこちら
https://twitter.com/sarkov28/status/1629067979647488001
に書きました。

このグラフは、「修復不可能な間違いのあるグラフ」です。この点は、スプレッドシート「(2)細かな説明」タブの (2-3) に説明してあります。


[2020-04-15 a] スプレッドシートを使った新型コロナ感染シミュレーション(その2)

スプレッドシートを使った新型コロナ感染シミュレーション(その2)です。

Newsweek 2020-06-09 号「2020-06-11 「8割おじさん」の数理モデルとその根拠──西浦博・北大教授」のグラフと、そのスプレッドシートによる再現

2020-04-15 に発表された「42万死亡推計」を再現します。
また西浦氏が「42万死亡推計」を説明した Newsweek 記事
2020-06-11 「8割おじさん」の数理モデルとその根拠──西浦博・北大教授
https://www.newsweekjapan.jp/stories/world/2020/06/8-39.php
に掲載のグラフを再現します。(雑誌では 2020-06-09 号)

スプレッドシートはこちらです。
https://docs.google.com/spreadsheets/d/1hXyY-VP9ldLf0N8kg7MH-qPoml_1-pv5Buota7MZ0Pc/edit?usp=sharing

関連する python による再現計算はこちらです。
https://colab.research.google.com/drive/1Iz4Z5E5M66OjztYD43tQSb5x5YAsHw94?usp=sharing

細かな説明はスプレッドシートに書いてありますが、概略をこちら
https://twitter.com/sarkov28/status/1630471279429169152
に書きました。
このグラフには、(その1) に指摘したような「修正不可能な間違い」はありません。
しかしこのグラフに結びついている「42万死亡推計」には重大な問題があり、これは計算してはいけない計算であり、あのように発表してはいけなかったと考えています。この点についてはいずれ twitter @sarkov28 アカウントで書く予定です。(twitter に書いたら、ここに url を書きます。)


[2020-04-22 a] スプレッドシートを使った新型コロナ感染シミュレーション(その4)

スプレッドシートを使った新型コロナ感染シミュレーション(その4)です。

2020-04-22 専門家会議、資料1図3 のグラフと、そのスプレッドシートによる再現

2020-04-22 専門家会議、資料1図3を再現します。このグラフは、首相が(2020-04-29 の)国会答弁で「接触8割減」の根拠として示したグラフと実質同等のグラフです。(報告日曲線のオレンジ線は再現しません。再現しない理由についてはスプレッドシート(2-6)に書きました。このオレンジ線は、python によるもので再現しています。)

スプレッドシートはこちらです。
https://docs.google.com/spreadsheets/d/1q2TWal-7MPi6s1H5LfRySv6Fa42K8k_PNM1gUlWRdNo/edit?usp=sharing

関連する python による再現計算はこちらです。
https://colab.research.google.com/drive/1_dK_DrEEVqxYOZsQOfLkk4jJnsKlQrD6?usp=sharing

twitter での説明はこちら
https://twitter.com/sarkov28/status/1686360184791478273
です。


(使い方)開いているグーグル スプレッドシートのコピーを、自分の google drive に作成する方法

開いているグーグル スプレッドシートのコピーを、自分の google drive に作成する方法です。

  • google にログインしているとします。
    gmail のアカウントを持っていれば、ログインできます。)
  • 何らかのグーグル スプレッドシートを、何らかのブラウザ(Microsoft Edgegoogle Chrome など)で開いているとします。
  • 以下に [メニュー] と書きますが、画面には2つのメニューがあるかも知れません。
  • [ブラウザのメニュー] と [グーグル スプレッドシートのメニュー] です。([ブラウザのメニュー] は、設定などによっては表示されていない場合もあります。)
  • 2つのメニューはいずれも画面の上の方にあると思います。通常は、[ブラウザのメニュー] の方が上にあります。(2023-01 の時点での [グーグル スプレッドシートのメニュー] の右端の項目は、「ユーザー補助機能」です。ただしこうした画面デザインは google の都合で変更される場合があります。)
  • [グーグル スプレッドシートのメニュー] の [ファイル] の [コピーを作成] を選び、保存先を指定すると、ユーザーの google drive の指定した保存先に、「今開いているグーグル スプレッドシートのコピー」が作成されます。
  • 自分の google drive フォルダを開く方法については、こちら に少し書きました。

(使い方)自分の google drive を開く方法

自分の google drive を開く方法です。

  • google にログインしているとします。
    gmail のアカウントを持っていれば、ログインできます。)
  • 2023-02 の時点では、https://drive.google.com/drive/my-drive?ths=true を開くと、自分の google drive が開きます。
  • これで開かない場合は、すいませんが別途 google などで調べて頂いた方がいいと思います。
    (すぐに見つかると思いますが、ご不明であれば twitter の sarkov28 までお問い合わせください。)

修正履歴

大きく修正したら、ここに書いておきます。

  • 2023-02-27
    (その1)を書いて、公開しました。
  • 2023-02-28
    (その2)を書きました。
  • 2023-03-10
    全体に加筆しました。
  • 2023-04-23
    (その3)を書きました。
  • 2023-08-01
    (その4)を書きました。
  • 2023-08-06
    各項目内の順序を入れ替えるなど修正しましたが、内容に変更はありません。
    (その4)に少し加筆しました。
  • 2023-08-07
    (その4)にグラフを追加しました。


コロナ対策の必要性を専門家に聞いた、BuzzFeed の連続記事のリスト


私がネット上でしていることの まとめ は、こちらに。
https://sarkov28.hatenablog.com/entry/2022/03/29/160915



BuzzFeed が、33項目のコロナ対策のそれぞれに対し、必要性、科学的根拠の有無を5人の専門家に聞きました。
2023-02-15~2023-02-22に掲載された、8本の連続記事です。

連続記事の一部をまとめた表を作成しました。

表1 "×"が1つ以上ついた23項目の集計

表2 "×"がつかなかった10項目の集計

上の2枚の表を作成するに際しては、以下のようにしました。
つけた "×" の数が多い専門家を、左にしました。
また、項目の順序は、表1では、ついた "×" の数が多いものを上にしました。
表2では、ついた "〇" の数が多いものを上にしました。
こうやって順序を入れ替えると、

  • 専門家毎の傾向が、より見えやすくなる。
  • 意見が一致する項目なのか、意見が分かれる項目なのかが、より見えやすくなる。

というメリットがあります。

https://twitter.com/sarkov28/status/1628584891960168449 以下で、これらの表の関連事項を検討しました。
また上の2枚の表は、本来ならば BuzzFeed 記事に最初からあるべき表です。
少なくとも上に述べたようなメリットがあるからです。
どうして BuzzFeed はこうした表を作成して示さなかったのでしょう。
https://twitter.com/sarkov28/status/1628665602012483584 以下付近では、この点について検討しました。
記事には、上の表以外の内容も沢山あります。
各対策の「科学的根拠の有無」への回答や、各対策に関する各専門家のコメントなどです。

記事のリストなど:


第1回 そのマスク、科学的に意味がありますか?今後も必要ですか? 専門家に仕分け作業をしてもらいました

2023-02-15
そのマスク、科学的に意味がありますか?今後も必要ですか? 専門家に仕分け作業をしてもらいました
https://www.buzzfeed.com/jp/naokoiwanaga/shiwake-mask


第2回 3密を避ける、イベントでの大声禁止、科学的に意味があっても... 思い切って無くしたほうがいいのはどれ?

2023-02-16
3密を避ける、イベントでの大声禁止、科学的に意味があっても... 思い切って無くしたほうがいいのはどれ?
https://www.buzzfeed.com/jp/naokoiwanaga/shiwake-social-distance


第3回 自己検査、非接触型の体温計、自分で感染に気づくための対策、これからも必要?

2023-02-17
自己検査、非接触型の体温計、自分で感染に気づくための対策、これからも必要?
https://www.buzzfeed.com/jp/naokoiwanaga/shiwake-test


第4回 飲食店の換気、パーテーション、必要ですか? 新型コロナの主な感染経路、エアロゾル対策でやめられること

2023-02-18
飲食店の換気、パーテーション、必要ですか? 新型コロナの主な感染経路、エアロゾル対策でやめられること
https://www.buzzfeed.com/jp/naokoiwanaga/shiwake-aerosol


第5回 テーブルのアルコール消毒、ビュッフェの手袋使用、意味はありますか? 接触感染対策を考える

2023-02-19
テーブルのアルコール消毒、ビュッフェの手袋使用、意味はありますか? 接触感染対策を考える
https://www.buzzfeed.com/jp/naokoiwanaga/shiwake-contact-infection


第6回 「誰とどこで会ったのか記録する」「お店で連絡先を記入」 接触者の追跡はまだ必要?

2023-02-20
「誰とどこで会ったのか記録する」「お店で連絡先を記入」 接触者の追跡はまだ必要?
https://www.buzzfeed.com/jp/naokoiwanaga/shiwake-contact-tracing


第7回 病院の面会、盆・正月の親戚や家族との宴会、これからも制限しなくちゃだめ?

2023-02-21
病院の面会、盆・正月の親戚や家族との宴会、これからも制限しなくちゃだめ?
https://www.buzzfeed.com/jp/naokoiwanaga/shiwake-meeting


第8回 新型コロナワクチン、今後もうち続けた方がいいの? 「ウィズコロナ」を唱える専門家も訴える対策緩和の前提条件とは?

2023-02-22
新型コロナワクチン、今後もうち続けた方がいいの? 「ウィズコロナ」を唱える専門家も訴える対策緩和の前提条件とは?
https://www.buzzfeed.com/jp/naokoiwanaga/shiwake-vaccine


BuzzFeed 記事の誤りについて

BuzzFeed の連続記事の一部に明白な誤りがあります。
https://twitter.com/sarkov28/status/1628603113723793410
に書いたように、
第2回
https://www.buzzfeed.com/jp/naokoiwanaga/shiwake-social-distance
において、「時差通勤の推奨」への答えの表が無く、その一方で「飲食店で真正面で話すことを避ける」の答えの表がが2つ掲載されています。
答えの表を貼り間違えたのだと思われます。
この件は、2023-02-23 に上記のように書いたのですが、現時点(2023-02-25 10:00)でそのままです。


西浦氏の説明から「「接触8割減」に必要な人流削減は、ほぼ55%」を計算する


私がネット上でしていることの まとめ は、こちらに。
https://sarkov28.hatenablog.com/entry/2022/03/29/160915



2020-04-24 の西浦氏の説明から、「接触8割減」に必要な人流削減は、ほぼ55%だと計算できます。
この計算を示します。

(1)概要

概要です。

2020-04-24 の西浦氏の説明から、「接触8割減」に必要な人流削減は、ほぼ55%だと計算できます。

計算に用いる情報が示されたのは、2020-04-24 の記者会見です。
これは「第2回意見交換会」という名前ですが、実質的に記者会見です。
youtube に動画もあります。 https://www.youtube.com/watch?v=0M6gpMlssPM
(この記者会見の動画は、上記の他ネット上に複数があり、また配布された資料(の一部と思われるもの)が twitter 上にあります。これらの所在は こちらの [資料] をご参照下さい。)

この記者会見で西浦氏は、接触削減の評価方法を変更しました。
評価方法の変更前は、「「接触8割減」に必要な人流削減は8割だ」と広く報じられていました。(これら報道の根拠も西浦氏ではないかと私は考えています。そう考える理由についてはいずれおそらく twitter に。書いたらここに link を置きます。)

記者会見で変更した評価方法によると、必要な人流削減量は8割未満になります。
西浦氏も記者会見で「8割に至ってなくてもいい」と何度も述べています。(https://twitter.com/sarkov28/status/1581930764484034560
ところが西浦氏は、変更した評価方法で「接触8割減」のためにどれだけの人流削減が必要になるのか(「8割に至っていなくてもいい」とは、実際のところ何%なのか)を明確には語りませんでした。
これは説明上の重要事項が欠落した、ありえないほどおかしな、不適切な説明です。
この重要事項は、記者会見で西浦氏が示した説明から計算できます。

本題に入る前に、「ありえないほどおかしな」というのを説明しておきます。

  • 2020-04-24 の記者会見で西浦氏は、質疑応答を含めた1時間45分ほどの時間の約半分を使って「接触削減の評価方法」を説明しました。
  • そこで評価方法を「接触率を考慮しない→する」と変更し、そう何度も説明しました。
  • そして報道で使われていた人流削減基準の「8割」を何度も否定しています。
  • ならば人流削減の新たな基準値をはっきり示さないのは、ありえないほどおかしな話だ、

ということです。
もしキッチリした数字が言えないなら、およその数でも、幅の提示でも、何かを示す必要があります。仮にそれすら言えないのなら、事情とともに「基準は言えない」を明言する必要があります。
しかし、こうした説明もありませんでした。これはちょっと信じられないほど不自然です。
西浦氏は、本エントリで計算された新しい基準値「ほぼ55%」を言いたくなかったのかも知れません。

西浦氏は明示してくれませんでしたが、記者会見の中で材料は提示していました。
以下でこの材料を使って「ほぼ55%」を計算します。

(2)何を計算するのか

何を計算するのか、説明します。

2020-04-24 の記者会見で西浦氏は、

接触削減は、感受性人口の減少と、接触率の減少との掛算(積)で評価できる、 ... (2.1)

と説明変更しました。(変更前の説明も、西浦氏によって示されたものと考えています。)

当時の政府の政策「接触8割減」のために、新しい評価方法では人流をどれだけ削減する必要があるのでしょう。 ... (2.2)
(2.2)の「どれだけ削減する必要が」を計算したいのです。

(2.1)と(2.2)を組み合わせて書き換えると、以下の表現になります。
(感受性人口の減少と、接触率の減少との掛算で評価できる)接触削減が「接触8割減」になるための、人流削減はどれだけか。 ... (2.3)
計算したいのは、(2.3)の「人流削減はどれだけか」です。

(2.3)の一部は既に分かっています。
感受性人口は、人流と同じように減少します。
つまり、
人流が p 倍(p = 0.0~1.0)になると、感受性人口も p 倍になる ... (2.4)
のです。

(2.4)で「人流と感受性人口との関係」は分かっていますので、(2.3)を計算するために残っているのは「人流と接触率の関係」です。
言い方を変えると、必要な人流の削減率を計算するために残っているのは
人流が p 倍になる時に、接触率がどのように減少するのか、 ... (2.5)
です。

(3)「ほぼ55%」を計算した背景

「ほぼ55%」を計算した背景です。

このエントリだけでも上に示した内容として読めるようにしてありますが、このエントリは、西浦氏が 2020-05-01 の専門家会議とその後の記者会見で示した奇妙な説明変更の中で、重要な位置を占めています。
これを説明した twitter での連ツイ群[接触削減の評価方法の大混乱]が以下です。
この連ツイ群には2つのポイントがあります。

  • 一つ目は、接触削減の評価方法に大混乱があったことです。
    国民の行動を制限した接触削減政策の評価方法に混乱があったというのは、重大なことだと考えます。
  • 二つ目は、西浦氏が 2020-05-01 の専門家会議で、不適切な説明変更を意図的にしたことです。
    一般的に、誰かが何かおかしな言動をしても、それが意図的であるとまで主張するのは困難です。しかしここでの西浦氏の説明は極めておかしな説明を繰り返し行っているので、私はこれを意図的だと主張します。
    政策の評価方法の説明変更がこのような形で行われたのは、重大なことだと考えます。
    https://twitter.com/sarkov28/status/1581927071370002432

これらの詳細、特に私が西浦氏の説明変更が意図的だと考えている理由については、以下の twitter をご参照ください。

これらは [0 目次]からも辿れるようにしてあります。

なお私は、「接触8割減」の根拠には重大な疑義があると考えており、その件については https://twitter.com/sarkov28/status/1463853344720490503 以下で書いています。

(4)計算

「ほぼ55%」を計算していきます。

(4-1) 図1と図2から、計算方法を読み取る

まず、図1と図2から、計算方法を読み取ります。

時折私の推測が入っていますが、それは西浦氏の説明が不足していることが原因です。
説明が不足しているのは、不適切です。

図1は、西浦氏が記者会見で示した資料に私が緑線を加筆したものです(所在は こちらの [資料] に)。

減少率(図1e)を、固有値(図1c)  / 固有値(図1d) の割り算で計算しています。
(図1e) = 1.0 - (図1c)  / (図1d) ... (4.1)
実際の数値を入れて右辺から書くと、
1.0 - 185741 / 368870 = 0.4964 = 49.6% ... (4.2)
となります。
(図1e)の49.6%が、(図1a)なのですから、この(4.1)を言葉で書くと、こうなります。
(接触率の減少) = 1.0 - (ある日の固有値)  / (基準日の固有値) ... (4.3)

ここで「固有値」というのがよく分からないのですが、それは図2に書いてあります。
図2も、西浦氏が会見で示した資料に私が緑線を加筆したものです。

(図2f)に、「接触頻度行列 T の最大固有値」とあります。
図1の(図1c)(図1d)の「固有値」は、ここに書いてある最大固有値だと思われます。
接触頻度行列 T というのは、(明記はありませんが、) t_{ij} を要素とする行列でしょう。 この T の最大固有値を使うということです。

以上をまとめると、以下になります。

  • (4a) 年齢群 i と年齢群 j の接触頻度  t_{ij} を(図2b)で計算し、
  • (4b) その  t_{ij} を要素とする接触頻度行列 T を作り、
  • (4c) その最大固有値(図2f)を計算し、
  • (4d) その変化(図1e)を計算すると、
  • (4e) 接触率の減少(図1a、式(4.1))が計算できる。 ... (4.4)

以上で計算方法が分かりましたので、
「人流 が p 倍になるとき、(4.4)の接触率はどうなるのか」
を計算していきます。

(4-2) 読み取った計算方法で計算していく

読み取った計算方法で計算していきます。

人流が p 倍になった時の

  • (4a) 年齢群 i と年齢群 j の接触頻度  t_{ij} を(図2b)で計算し、
  • (4b) その  t_{ij} を要素とする接触頻度行列 T を作り、
  • (4c) その最大固有値(図2f)を計算し、
  • (4d) その変化(図1e)を計算すると、
  • (4e) 接触率の減少(図1a、式(4.1))が計算できる。 ... (4.4)

を計算していきます。
この際、計算を簡単にするため、人流が p 倍になると、各年齢群の人口が一律に p 倍になると考えます。
実際には一律に p 倍にならずにバラつきがあるので、計算結果は多少ずれるはずです。

(4a) にある(図2b)は以下です。

 \displaystyle t_{ij} = \sum_{h=1}^H \sum_{z=1}^Z (k^{hz}_i \times \frac{k^{hz}_j}{\sum_{l=1}^n k^{hz}_l})

この右辺を、 \displaystyle k^{hz}_i と、 \displaystyle \frac{k^{hz}_j}{\sum_{l=1}^n k^{hz}_l} とに分けて考えます。

まず  k^{hz}_i を考えます。これは簡単です。
人流が p 倍になると、 k^{hz}_i は p 倍になります。... (4.5)
図2の(図2e)に、「 k^{hz}_i = ある年齢群の人口」と書いてあるからです。

一方、より複雑な  \displaystyle \frac{k^{hz}_j}{\sum_{l=1}^n k^{hz}_l} は、人流が p 倍になっても変化しません。
なぜなら、「 k^{hz}_i = ある年齢群の人口」なので、人流が p 倍になると、

  • 分子の  \displaystyle k^{hz}_j が p 倍になり、
  • 分母の  \sum_{l=1}^n k^{hz}_l も p 倍になる

からです。分子と分母がどちらも p 倍になるので、 \displaystyle \frac{k^{hz}_j}{\sum_{l=1}^n k^{hz}_l} は変化しません。 ... (4.6)

以上の結果、人流が p 倍になる時、

  • (4.5) から、 k^{hz}_i は p 倍に、
  • (4.6) から、 \displaystyle \frac{k^{hz}_j}{\sum_{l=1}^n k^{hz}_l} は変化しない、

ことがわかりました。 ... (4.7)

注目している(図2b)は、
 \displaystyle t_{ij} = \sum_{h=1}^H \sum_{z=1}^Z (k^{hz}_i \times \frac{k^{hz}_j}{\sum_{l=1}^n k^{hz}_l})
でした。人流が p 倍になる時は、ここに(4.7)を適用して、
 \displaystyle t_{ij} = \sum_{h=1}^H \sum_{z=1}^Z ( (p 倍になる) \times (変化しない) ) ... (4.8)
となります。
上で仮定したように各年齢群の人口が一律に p 倍になると考えた場合、(4.8)式は、 p 倍になります。

以上により、人流が p 倍になる時、

  • (4a) 年齢群 i と年齢群 j の接触頻度  t_{ij} を(図2b)で計算し、

 t_{ij} が「p 倍になる」ことが分かりました。 ... (4.9)
したがって、

  • (4b) その  t_{ij} を要素とする接触頻度行列 T を作り、

の T も、「p 倍になります」。 ... (4.10)

この行列 T の最大固有値は、各年齢群の人口が一律に p 倍になると考えた場合には、p 倍になります。 ... (4.11)

これまでの計算では「各年齢群の人口が一律に p 倍」と考えてきましたが、実際にはばらつきがあります。
だから T の最大固有値は「ほぼ p 倍」と考えるべきだと思います。 ... (4.12)

結局、
人流が p 倍になるときの接触率は、ほぼ p 倍 になる ... (4.13)
ことが分かりました。

(4-3) 上の計算で省いた(誤魔化した)点の補足

上の計算で省いた(誤魔化した)点の補足です。

お気づきかも知れませんが、上の計算で省いた(誤魔化した)点があります。
接触率の増減の計算をしていたはずなのに、途中で接触頻度の増減を使っていました。

西浦氏は、3カ所で「接触率の増減と接触頻度の増減は同じ」の旨を説明しています。
なので、接触率の増減と、接触頻度の増減とを区別する必要はないのです。
西浦氏による3カ所の説明については、(5)補足「接触率の増減と接触頻度の増減は同じ」に書いておきますので、そちらをご参照下さい。

(4-4) 計算の仕上げ

計算の仕上げです。

(2)で計算のために「残っている」としていたのは、(2.5)の「人流と接触率の関係」でした。
再掲すると
人流が p 倍になる時に、接触率がどのように減少するのか、 ... (2.5)
です。

先ほど、
人流が p 倍になるときの接触率は、ほぼ p 倍 になる ... (4.13)
を得ていますので、これで(2.5)が分かりました。
ようやく、求めたかったものが計算できます。

計算したかった(2.3)を再掲します。
(感受性人口の減少と、接触率の減少との掛算で評価できる)接触削減が「接触8割減」になるための、人流削減はどれだけか。 ... (2.3)

(2.4)が、
人流が p 倍(p = 0.0~1.0)になると、感受性人口も p 倍になる ... (2.4)
であり、(4.13)が、
人流が p 倍になるときの接触率は、ほぼ p 倍 になる ... (4.13)
なので、これらを(2.3)に適用すると、以下になります。

人流が p 倍になった時の接触は、p×(ほぼ p)倍になる。これが「接触8割減」になるための、人流削減はどれだけか。 ... (4.14)

接触8割減」というのは、接触が 0.2 倍になることです。

したがって、「接触8割減」のために必要な p は、(4.14)から
p×(ほぼ p) = 0.2
となる p です。これを解くと、
p = ほぼ 0.45
となります。

接触8割減」のために必要な人流は、ほぼ 0.45 倍であることが分かりました。
つまり「接触8割減」のために必要な人流削減は、ほぼ55%であることが分かりました。

これで、
接触8割減」に必要な人流削減は、ほぼ55% ... (4.15)
が計算できました。

(5)補足「接触率の増減と接触頻度の増減は同じ」

接触率の増減と接触頻度の増減は同じ」という件についての補足です。

西浦氏は、資料の2カ所と、口頭の1カ所で「接触率の増減と接触頻度の増減は同じ」の旨を説明しています。
以下に西浦氏の説明の所在を示します。

(5-1) 「接触率の増減と接触頻度の増減は同じ」その1

接触率の増減と接触頻度の増減は同じ」その1です。

図1を再掲します。

この図は、(図1e)の減少率が、(図1a)の接触率の減少であり、それをメッシュごとに表示したのが(図1b)の接触頻度増減率だと説明しています。

(図1a)と(図1b)は「メッシュごと」かどうかの差ですから、この2つは同じものを指しています。つまり、

  • (図1a) 接触率(の減少)
  • (図1b) 接触頻度(増減率)

は同じものです。
したがって図1は、
接触率の増減と接触頻度の増減は同じ ... (5.1)
だと示しています。

(5-2) 「接触率の増減と接触頻度の増減は同じ」その2

接触率の増減と接触頻度の増減は同じ」その2です。

図2を再掲します。

図2の(図2b)(図2c)について、西浦氏は口頭で以下のように説明しています。

この数式をちゃんと翻訳すると、右側で日本語で書いているようなものです。
動画の 39m11s~
https://www.youtube.com/watch?v=0M6gpMlssPM&t=39m11s

西浦氏の説明における「この数式」は(図2b)を、「右側で日本語で」は(図2c)を指しています。
西浦氏は、両者を「ちゃんと翻訳すると」同じだと言っています。

  • 「この数式」の(図2b)左辺は、(図2d)によると「年齢群 i と 年齢群 j の接触頻度」です。
  • 「右側で日本語で」の(図2c)左辺は、「年齢 i と 年齢 j の接触率」です。

したがって、図2は、
接触率と接触頻度は同じ ... (5.2)
と示していると言えそうなのですが、西浦氏の真意は、
接触率の増減と接触頻度の増減は同じ ... (5.3)
だと思います。

(5.2)と(5.3)の違いについては、(5-5)に書いた補足 をご参照下さい。
私の推測になりますが、西浦氏が上掲動画で「ちゃんと翻訳すると」と、含意のある言い方をしたのは、(5-5)の補足の意味だと思います。

(5-3) 「接触率の増減と接触頻度の増減は同じ」その3

接触率の増減と接触頻度の増減は同じ」その3です。

西浦氏は、上の2つと別に、記者会見の質疑応答で、こう述べています。

(質問者)接触率と、接触頻度という言葉を使ってるんですけども(略)、言葉はどう使い分けてるんですか。
(西浦氏)接触頻度は(略)、ほぼ率で読んで頂いて大丈夫です。
動画の 1h17m55s~
https://www.youtube.com/watch?v=0M6gpMlssPM&t=1h17m55s
質問者は、日経記者のアンドウ氏。

西浦氏の回答の「率」というのは接触率です。だからこの動画の回答は
接触頻度は、ほぼ接触率です ... (5.4)
を示しているのですが、西浦氏の真意は、
接触率の増減と接触頻度の増減は(ほぼ)同じ ... (5.5)
だと思います。

(5.4)と(5.5)の違いについては、(5-5)に書いた補足 をご参照下さい。
私の推測になりますが、西浦氏が上掲動画で「ほぼ接触率です」と、「ほぼ」を付けたのは、(5-5)の補足の意味だと思います。

(5-4) 「接触率の増減と接触頻度の増減は同じ」のまとめ

接触率の増減と接触頻度の増減は同じ」をまとめておきます。

(5.1)(5.3)(5.5)の通り、西浦氏は資料と口頭で、接触頻度の増減と接触率の増減は同じである旨を示しています。

(5-5) さらなる補足

接触率の増減と接触頻度の増減は同じ」のさらなる補足です。

西浦氏は、接触率と接触頻度が、どこが同じでどこが違うのかを分かりやすく説明はしていませんが、西浦氏の説明の断片を私が補うと以下のようになります。

  • (5-5a) 接触頻度は、元になるデータがあれば、ある日付の値を計算できる。
    Σの式があるので。
  • (5-5b) したがって、ある日付の接触頻度を基準とした、別の日付の接触頻度の増減率も計算できる。
    (5-5a)で計算した値の比を計算すればいい。
  • (5-5c) 接触率は、ある日付における値を計算することはできない。
  • (5-5d) しかし、ある日付の接触率を基準とした、別の日付の接触率の増減率は計算できる。
    ある日付の接触頻度行列の最大固有値と、別の日付の接触頻度行列の最大固有値との比を計算すればいい。

(5-5a)の「Σの式」は、 \displaystyle t_{ij} = \sum_{h=1}^H \sum_{z=1}^Z (k^{hz}_i \times \frac{k^{hz}_j}{\sum_{l=1}^n k^{hz}_l}) です。
だから、

  • (5-5e) ある日付における接触頻度と、ある日付における接触率を同じとは言えません。
    そもそもある日付における接触率は計算できないからです。
  • (5-5f) ある日付を基準とした別の日の接触頻度の増減率と、ある日付を基準とした別の日の接触率の増減率は、同じと言えます。
    相対値において両者は、同じになるのです。

(5-5f)では単に「同じ」としましたが、接触頻度行列の各要素が増減する場合は、一般に同じ比率で増減することはなく、ばらつきが出ます。この寄与を考慮するなら、ここは「ほぼ同じ」とすべきです。

本エントリで関心があるのは、「人流が p 倍になったとき」でした。これは(5-5f)に該当します。
本エントリでの関心範囲においては、接触頻度と接触率は、同じと言えます。
正確を期すなら、「接触率の増減と接触頻度の増減は同じ」とすべきです。

(6)補足「接触頻度」の3つの意味について

接触頻度」の意味についての補足です。

本エントリの計算にも関係ある事項なので書いておきます。
西浦氏は「接触頻度」という語を、極めて不適切な態様で使っています。

ご説明している通り、接触頻度は、本エントリで重要な役割を果たしています。
ところが極めて不適切なことに、西浦氏は「接触頻度」という語を、短期間の間に複数の意味で使っているのです。
短期間というのは、2020-04-24 の記者会見から、2020-05-01 の専門家会議までの、わずか一週間です。この件は、上にも挙げた twitter 連ツイ https://twitter.com/sarkov28/status/1587414490303279104 に書きました。
複数というのは、3つです。この他に明白な1つの誤用があります。

この事情があるので、厳密に言うと、この時期の西浦氏が接触頻度という語を使った際は、この3つのうち、どの意味で使っているのかが不明だという問題があります。
接触頻度は重要概念で頻出しますので、「接触頻度をどの意味で使っているのか不明だ」というのは「この付近の西浦氏はほとんど何を言ってるのかが分からない」という、非常に深刻な事態を指しています。

収拾がつかないので私は、「西浦氏の説明は、(私が)解釈可能な範囲において一貫しているはずだ」という仮説を立てました。
要するに「西浦氏は(私が)解釈可能な範囲においてまともな説明をしているはずだ」という仮説です。
この仮説に基づき、2020-04-24 に使われている接触頻度は1つの意味で使われていると解釈しています。
またこの仮説だと、2020-05-01 には、2020-04-24 とは別の2つの意味で使われていると解釈できます。

なお、上に「1つの誤用」と書いたのは、2020-05-01 専門家会議の提言 p.06 におけるものですが、これは会議当日に、田中重人 TANAKA Shigeto @twremcat さんに指摘 https://twitter.com/twremcat/status/1256215440193437698 されています。(同じ誤りが議事次第 p.06 にも。)
要するに、TANAKA さんが見てすぐ分かるような間違いが、提言(と議事次第)にある。
頭が痛いのは、この誤りが「接触頻度」という重要概念を定義する一節で起きていることです。わざわざ書くのも馬鹿らしいですが、重要概念の定義に誤りがあったら、そこでの説明全体がおかしなものになります。
つまり、これら資料においては、接触頻度に関する記述を字義通りに読むことは出来ず、読者が定義を忖度して読むしかありません。
しかも追い打ちを掛けるように、そこに定義されていない別の使われ方(=ステルス説明変更)もあるのです。
何と言ったらいいのか、ある程度の執着心を持っていないと、これら資料を読み解こうという気持ちにならない状況があります。この状況を意図した誤記ではないかとの疑いすらあります。



(99)修正履歴

修正履歴です。

大きな修正をした場合には、ここに書きます。

  • 2022-10-21 初版作成。
  • 2022-10-22 (2)と(4-4)を詳しくし、(4-3-4)と(5)を追加しました。
  • 2022-10-23 (5)を(6)にし、(4-3)のほとんどを(5)にし、併せて周辺の記述を修正しました。新たに(5)にした部分を他から参照しやすくするための変更です。
  • 2022-10-24 (5-5)を追加しました。
  • 2023-04-14 (3)の twitter の連ツイの url を最後まで書きました。数カ所に加筆、修正をしました。


接触削減の評価方法の大混乱 [資料]


私がネット上でしていることの まとめ は、こちらに。
https://sarkov28.hatenablog.com/entry/2022/03/29/160915



接触削減の評価方法の大混乱]として書いている twitter 連ツイ(https://twitter.com/sarkov28/status/1581947544984133634)や関連するブログエントリ(https://sarkov28.hatenablog.com/entry/2022/10/21/233456)が参照している資料をここに置きます。

今のところ、並べられるものは日付順に並べてあります。

関連する報道

接触削減の評価方法の大混乱]に関連する報道です。

記事の日付から日数が経過していますが、現時点(2022-10-21)でもこれらの記事を掲出してくれているのはありがたいです。
コロナに関する重要な資料だと考えますので、今後も継続して頂けるよう、お願いします。

2020-03-19 第08回 新型コロナウイルス感染症対策専門家会議

2020-03-19 第08回 新型コロナウイルス感染症対策専門家会議に関する事項です。

今のところこの会議への言及はありませんが、これは「接触8割減」の根拠となった SIR モデルでの計算が示された会議なので、置いておきます。

2020-04-07 西浦氏による「接触8割減」に関する twitter 動画

2020-04-07 西浦氏による「接触8割減」に関する twitter 動画です。

2020-04-22 第11回 新型コロナウイルス感染症対策専門家会議

2020-04-22 第11回 新型コロナウイルス感染症対策専門家会議に関する事項です。

今のところこの会議への言及はありませんが、これは「接触8割減」に初めて言及があった専門家会議なので、置いておきます。

2020-04-24 の記者会見(1度目の会合、第2回意見交換会)に関する事項

2020-04-24 の記者会見(1度目の会合、第2回意見交換会)に関する事項です。

本来の名前は「第2回意見交換会」ですが、実質的に記者会見です。
この記者会見のテーマは2つであり、そのうちの1つは、「接触削減の評価方法」です。
「2020-04-24 第2回 意見交換会」の動画は、複数が公開されています。
私がこの会合の動画に言及する時は、(動画1) を参照しています。 記者会見で配布された資料(の一部)が、(動画3) に書いた twitter url に置いてあります。

2020-05-01 第12回 新型コロナウイルス感染症対策専門家会議

2020-05-01 第12回 新型コロナウイルス感染症対策専門家会議に関する事項です。

その他の専門家会議

その他の専門家会議に関する事項です。





修正履歴

大きな修正をした場合には、ここに書きます。

  • 2022-10-21 初版作成。



シンプル SIR の流行初期における I(t) と、⊿I(t) や new_I(t) との関係


  1. 「流行初期における感染者数  I ( t ) と感染者数の増分  ⊿ I ( t ) の関係」を考えます。
  2. 流行初期には、 ⊿ I ( t ) と、新規感染者数  new\_I ( t ) に大きな差はありません。
  3. このため、1. は、「流行初期における感染者数  I ( t ) と新規感染者数  new\_I ( t ) の関係」でもあります。
  4. ここで検討しているのは、シンプルな SIR モデルです。


(いずれ他の件とつながる予定です。)

以下は、シンプルな SIR モデル https://sarkov28.hatenablog.com/entry/2021/01/04/113012 での検討です。

モデルがシンプル SIR ならば、流行初期の「指数関数的増大時」には、
 I ( t ) = I ( 0 ) exp ( ( βS ( 0 ) - γ ) t ) です。...... (1)

簡単のため、 βS ( 0 ) - γ = k とおきます。...... (2)
 k は、定義から定数です。

すると、 I ( t ) = I ( 0 ) exp ( kt ) ...... (3)
となります。 ⊿I ( t ) は、以下のように書けます。
 ⊿I ( t )
 = I ( t ) - I ( t - 1 )
 = I ( 0 ) exp ( k t ) - I ( 0 ) exp ( k ( t - 1 ) )
 = I ( 0 ) ( 1 - exp ( - k ) ) exp ( k t )

ここで、(3) があるので、
 ⊿I ( t ) = ( 1 - exp( - k ) ) I ( t )
となります。ここに(2)の  k を戻すと、以下になります。
 ⊿I ( t ) = ( 1 - exp ( - ( βS ( 0 ) - γ ) ) ) I ( t ) ...... (4)

なお、流行初期なので、 S ( 0 )≒N (=全人口)です。 ...... (5)
(4)(5)から、以下になります。
 ⊿I ( t ) = ( 1 - exp ( - ( βN -  γ ) ) ) I(t) ...... (6)

 - ( βN -  γ )  β = R0/NT、γ=1/T を代入すると、以下に。
 - ( βN -  γ )
 = - ( N R0 / NT - 1 / T )
 = - ( R0 / T - 1 / T )
 = - ( R0 - 1 ) / T ...... (7)

(6)と(7)から、
 ⊿I ( t ) = ( 1 - exp ( - ( R0 - 1 ) / T ) ) I ( t ) ...... (8)
となります。(8)において、 ( 1 - exp ( - ( R0 - 1 ) / T ) ) は定数なので、
(8)は、感染者数の増分  ⊿I(t) が、感染者数  I(t) に定数を乗じたものだとしています。

(8)が、冒頭 1. の
「流行初期における感染者数  I ( t ) と感染者数の増分  ⊿I ( t ) の関係」です。
ただし、(8)の導出に際しては、(1)、(5)で、近似を使っていることにご注意下さい。
(8)は、流行初期に、近似的にのみ成立します。

流行初期ならば、 ⊿ I ( t ) = new\_I ( t ) ...... (9)
としても大過ありません。この場合、(8)(9)から以下となります。
 new\_I ( t ) = ⊿ I ( t ) = ( 1 - exp ( - ( R0 - 1 ) / T ) ) I ( t ) ...... (10)

(10)において  ( 1 - exp ( - ( R0 - 1 ) / T ) ) は定数なので、
(10)は、新規感染者数  new\_I ( t ) が、感染者数  I ( t ) に定数を乗じたものだとしています。

(10)が、冒頭 3. の
「流行初期における感染者数  I(t) と新規感染者数  new\_I(t) の関係」です。
(10)の導出に際しては、(1)、(5)、(9)で、近似を使っていることにご注意下さい。
(10)は、流行初期に、近似的にのみ成立します。



シンプル SIR における「感染者数」の倍加時間は、R0、T の関数


  • 流行初期の「感染者数」の倍加時間と、R0、T との関係を考えます。
  • 単に「倍加時間」と書いてあると、多くの場合は「感染者数」ではなく「新規感染者数」を論じています。ご注意下さい。
  • ここで検討しているのは、シンプルな SIR モデルです。


(いずれ他の件とつながる予定です。)

以下は、シンプルな SIR モデル https://sarkov28.hatenablog.com/entry/2021/01/04/113012 での検討です。

 S, I の初期値を、 S ( 0 ), I ( 0 ) とします。
モデルがシンプル SIR ならば、流行初期の「指数関数的増大時」には
 I ( t ) = I ( 0 ) exp ( ( βS ( 0 ) - γ ) t ) です。 …… (1)

ある時点  t t + ⊿t において、感染者数が倍加しているなら、
 I ( t+⊿t ) / I ( t ) = 2 です。…… (2)

(2)の左辺は、(1)を使うと、
 I ( t+⊿t ) / I ( t )
 = exp ( ( βS ( 0 ) - γ ) ( t + ⊿t ) )  / exp ( ( βS ( 0 ) - γ ) t )
 = exp ( ( βS ( 0 ) - γ ) ⊿t ) です。…… (3)
(2)と(3)と  e を底とする  log を使うと
 ( βS ( 0 ) - γ ) ⊿t = log2
となるので、
 ⊿t = log2 / ( βS ( 0 ) - γ ) …… (4)
となります。

この右辺の  ( βS ( 0 ) - γ ) は、 β = R0γ/N を使うと、
 ( βS ( 0 ) - γ ) = γ ( ( R0 S ( 0 )/N ) - 1 )
であり、流行初期では  S ( 0 ) ≒ N (=全人口)なので、
 S ( 0 ) / N ≒ 1 であるため、…… (5)
 ( βS ( 0 ) - γ ) = γ( R0 - 1 ) …… (6)
となります。

(4)(6)から、感染者数が倍加する  ⊿t は、
 ⊿t = log2 / ( γ ( R0 - 1 ) )
 ⊿t = T \ log2 / ( R0 - 1 ) …… (7)
となります。

シンプルSIR の流行初期においては、
感染者数の倍加時間  ⊿t は、 R0 T(あるいは、 R0 γ)の関数(7)です。

上記で、(7)は、流行初期でのみ成立する近似(1)(5)を使っています。
(7)は、流行初期に、近似的にのみ成立します。



更新履歴

  • 2022-05-13
    公開。
  • 2023-09-24
    少し加筆しました。主旨は変わっていません。

(インストール不要で)SIR モデルを計算できるスクリプト


私がネット上でしていることの まとめ は、こちらに。
https://sarkov28.hatenablog.com/entry/2022/03/29/160915
スプレッドシートによる計算については、こちらに。
https://sarkov28.hatenablog.com/entry/2023/02/27/090000



  • gmail のアカウントがあれば、
  • 特になにもインストールなどをしなくても、
  • SIR モデルを計算して、
  • グラフを描けるスクリプト

を公開しています。
ブラウザ上で実行されます。
実行するのは簡単で、(たぶん)小学生でも楽しんで(?)頂けると思います。

SIR の微分方程式を、python数値計算モジュールで計算しています。
この他に、SIR の微分方程式をスプレッドシート上で計算するもの も公開しています。

私は、以前から西浦氏のグラフの問題を指摘しています。
特に、こちら https://twitter.com/sarkov28/status/1350101975753318405 の連ツイに書いた、私が個人的に「量産型」と名付けている一群のグラフの誤りは特に大きな問題です。
今後、この「量産型」のグラフを、それぞれ google colab で再現していこうと思っています。

公開している google colab のスクリプトは以下です。
今のところ、以下は全て西浦氏が公開したグラフ(など)に関連するものです。
元のグラフが公開された日付の順に並べてあります。


目次


(使い方)スクリプトのパラメータなどの変更方法

スクリプトのパラメータなどの変更方法です。

gmail のアカウントを持っている人は、(google によって自動的に)自分の google drive を持っています。
google colab スクリプトを自分の google drive にコピーすれば(=やり方は こちら)、パラメータなどを改変して保存することもできます。
スクリプトのパラメータを変えて実行することは、どなたにでもできると思います。
例えば、基本再生産数 R0 を設定している箇所の数値を変更できます。


[2020-03-02 a] 「2020-03-02 専門家会議資料」で西浦氏が使ったパラメータの推計

「2020-03-02 専門家会議資料」で西浦氏が使ったパラメータを推計します。

この項目の内容にご関心がある方はさほど多くないかも知れません。
より一般的な事項は、下の 2020-04-15 a などをご参照下さい。

この項目のスクリプトは、グラフを描画しません。
「SIR モデルの計算を、パラメータを変えながら何度も繰り返し(=100回程度)、計算結果を比較し、予め指定しておいた条件に適合する計算結果になるパラメータを探索する」という処理(=Nelder-Mead法、アメーバ法)を行っています。


[2020-04-11 a] 日経の 2020-04-11 記事のグラフを再現する

2020-04-11 の日経記事
「「接触7割減」では収束まで長期化 北大教授が警鐘」
https://www.nikkei.com/article/DGXMZO57961860R10C20A4CZ8000
のグラフを再現します。

これは、西浦氏が twitter で「接触8割減」が必要な理由として示した [2020-04-15 f] と同じグラフです。
2020-04-11 の日経記事「「接触7割減」では収束まで長期化 北大教授が警鐘」のグラフ


[2020-04-15 a] 西浦氏の「42万死亡推計」を再現する

西浦氏の「42万死亡推計」を再現します。

本項の情報でも、この計算を再現できますが、少し下の [2020-04-15 e]Newsweek 記事のグラフを再現します。なお説明の連ツイは、こちらにしか書いてないこともあります。
西浦氏が Newsweek 2020-06-09 号の記事で示したグラフ


[2020-04-15 b] 西浦氏の「42万死亡推計」の情報開示のパラメータが不適切であることを示す

西浦氏が「42万死亡推計」に関して情報開示したパラメータが不適切であることを示します。


[2020-04-15 c] 西浦氏の「42万死亡推計」のパラメータのうち、平均世代時間 T を変更した場合の計算

西浦氏の「42万死亡推計」のパラメータのうち、平均世代時間 T を変更した場合の計算を示します。


[2020-04-15 d] 西浦氏の「42万死亡推計」のパラメータのうち、基本再生産数 R0 を変更した場合の計算

西浦氏の「42万死亡推計」のパラメータのうち、基本再生産数 R0 を変更した場合の計算を示します。


[2020-04-15 e] 西浦氏の「42万死亡推計」の再現と、関連する Newsweek グラフの再現

西浦氏の「42万死亡推計」を再現し、関連する Newsweek 2020-06-09 号の記事のグラフを再現します。
西浦氏が Newsweek 2020-06-09 号の記事で示したグラフ

同じ計算を、少し上の [2020-04-15 a] でも行っています。Newsweek 記事のグラフは再現しませんが、説明の連ツイには、ここの連ツイに書かなかった事項もあります。


[2020-04-15 f] 西浦氏が twitter に「社会全体で8割の接触減が必要である理由」として示したグラフを再現する

西浦氏が、twitter https://twitter.com/ClusterJapan/status/1250639295674634240 に「社会全体で8割の接触減が必要である理由」として示したグラフを再現します。
西浦氏が、2020-04-15 に tiwtter に「社会全体で8割の接触減が必要である理由」として示したグラフ

このグラフは、2020-04-11 に日経記事が示したグラフと同じなので、「[2020-04-11 a] 日経の 2020-04-11 記事のグラフを再現する」の項目をご参照下さい。
このグラフは、新型コロナクラスター対策専門家 @ClusterJapan の twitter アカウントから投稿されたものです。


[2020-11-10 a] 日本内科学会雑誌 第109巻第11号 の西浦氏らの論文の全3グラフの再現と、3グラフの縦軸の誤りの指摘

西浦氏らの 日本内科学会雑誌 第109巻第11号 の論文の全3グラフの再現し、この3グラフが全て間違っていることを示します。


上に挙げたスクリプトに関連するグラフを加え、別のスクリプトとして公開しました。
- スクリプトgoogle colab, python)はこちら
https://colab.research.google.com/drive/1MznAf_DXaIsznXbALcx19CAff2gF38dC?usp=sharing - 説明の twitter 連ツイはこちら
(3)のグラフが西浦氏の論文のグラフであり、(3)のグラフについての補足がこのツイの下にあります。
https://twitter.com/sarkov28/status/1647235552587182082


[特定の日付けに関連しない事項 a] 「免疫や感染症対策が、最終的な感染者数に与える影響」に関する計算

ブログエントリ「免疫や感染症対策が、最終的な感染者数に与える影響」 https://sarkov28.hatenablog.com/entry/2023/04/11/180000 を書きました。

「免疫による実効再生産数の低下」と「感染症対策での実効再生産数の低下」の違いを検討しました。
この2つは、どちらも実効再生産数を低下させます。
この2つによって感染拡大時の実効再生産数が等しく低下した2つの状況を想定し、そこからの感染状況を計算すると、最終的な感染者数(final size 最終規模)は一般に一致しません。
このエントリでの計算やグラフ描画を行うスクリプトgoogle colab, pythonhttps://colab.research.google.com/drive/1XUk08QtkniHMoYI7z_YbfYC3MhDauDv6?usp=sharing を作成しました。


(使い方)開いている google colab スクリプトのコピーを、自分の google drive に作成する方法

開いている google colab スクリプトのコピーを、自分の google drive に作成する方法です。

  • google にログインしているとします。
    gmail のアカウントを持っていれば、ログインできます。)
  • 何らかの google colab のスクリプトを、何らかのブラウザ(Microsoft Edgegoogle Chrome など)で開いているとします。
  • 以下に [メニュー] と書きますが、画面には2つのメニューがあるかも知れません。
  • [ブラウザのメニュー] と [google colab のメニュー] です。([ブラウザのメニュー] は、設定などによっては表示されていない場合もあります。)
  • 2つのメニューはいずれも画面の上の方にあると思います。通常は、[ブラウザのメニュー] の方が上にあります。[google colab のメニュー] は、「ランタイム」という項目を含んでいる方です。
  • [google colab のメニュー] の [ファイル] の [ドライブにコピーを保存] を選ぶと、自分の google drive の、[Colab Notebooks] フォルダに、「今開いている google colab スクリプトのコピー」が作成されます。
  • 自分の google drive フォルダを開く方法については、こちら に少し書きました。

(使い方)自分の google drive を開く方法

自分の google drive を開く方法です。

  • google にログインしているとします。
    gmail のアカウントを持っていれば、ログインできます。)
  • 2023-02 の時点では、https://drive.google.com/drive/my-drive?ths=true を開くと、自分の google drive が開きます。
  • これで開かない場合は、すいませんが別途 google などで調べて頂いた方がいいと思います。
    (すぐに見つかると思いますが、ご不明であれば twitter の sarkov28 までお問い合わせください。)

修正履歴

大きく修正したら、ここに書いておきます。

  • 2022-04-01
    公開
  • 2023-02-27
    [2020-04-15 e] を追加しました。
    「SIR を計算するスプレッドシート」の件を加筆しました。この他、全体を修正しました。
  • 2023-04-20
    [2020-04-11 a] [2020-04-15 f] を追加しました。
    [2020-04-15 e] に加筆、[2020-11-10 a] に「別のスクリプト」の件を加筆しました。
  • 2023-04-21
    [特定の日付けに関連しない事項 a] を追加しました。