打針率越高 難保證感染率越低

更新時間 (HKT): 2021.05.10 02:00
■美國是較早鼓勵市民接種的國家之一。

疫苗,人人皆由小接種到大,時至今日,大概不會有太多人質疑疫苗的科學原理。不過,研發有效可靠的疫苗通常需時十年八載,今次由爆疫到有疫苗打僅十個八個月,結果未見成效先見副作用。區區不是醫學專家,無資格論其副作用,但仍有基礎質疑這會計準則。

縱不論風險(壞處)一邊,回報(好處)呢?打完有無效果,數據上是看得到的。據說完成接種疫苗後一至兩周便有效,惟將全球完成接種的人口比例跟十日(一、兩周之間)後的每日新增個案比較,可見由2月下旬至4月下旬間,兩者都先後上升(圖一)。最近疫情似有見頂迹象但仍未回落,會否是疫苗見效呢?要再看一些日子才知。不過,過去一年已有三次疫情每隔約四個月見頂回落,但之後仍未持續向下,故曰要再看。

接種與新增感染率未向下斜

另一個直觀疫苗有無效的方法,是將全球大數拆開不同國家/地方,不跨時比,而是橫面比較各地接種率與感染率關係,至於所選定的日子為約三周前的完成接種率和上周的新增感染率(留兩周予疫苗生效),當中58個國家/地方有數據。然而圖二所見,這些代表國家/地方的散點並無呈反向或下斜關係,而簡單fit出的趨勢斜率也是正數。由此可見,即使直觀的橫面比較,也未見接種率越高而新增感染率越低的預期現象。

上述圖示法只能納入兩個變數,無論跨時或跨空比較,都只看到接種率和感染率,其他因素都忽略了。要納入其他影響,最正路是做迴歸分析,即以更多因素來解釋疫情(新增感染率)。若估算出的接種率系數為負(接種率越高,新增感染率越低)且統計顯著,則可說疫苗見效。由於數據有縱(時)橫(空)兩度向(panel data),簡單線性迴歸(simple OLS)不行,通常做法是當error components model處理,而估算方法一般是以fixed effects estimation進行。較麻煩的,是各地數據不全,故一餅(array)大數據裏頭會有很多「窿窿」,而常用手法是將這些數據zeroing out。這裏不是教書場合,只寫下估算的算式算了,有興趣者請自行找書細讀。方程如下。

科學原則是分析結果能被任何人複製,故這裏用的數據可公開下載。程式編碼方面,則一如學界的自私慣例,恕不贈予任何外人。至於數據是免費的,網址如下:https://covid.ourworldindata.org/data/owid-covid-data.csv

這裏有219個國家/地方(留意要剔走區、洲),由2020年1月1日至2021年5月5日最多共491觀察日。由於數據餅有很多空白部份,所有日度數據將平均化作周度,中間未有觀察的日子則續取前值。

查這數據檔,設日期的直行為第一直行,由第42至最尾第56直行的是接種疫苗以外的因素,包括人口密度、歲數、人均GDP、赤貧程度、心臟病死亡率、糖尿病比率、吸煙比率、洗手設施、病床數目、預期壽命和人類發展指數;這些都會盡量放入模型去作測試。不過,首先放進模型的,左邊(y)定是感染率,而右邊(X)的慣例是先放左邊的滯後項,因最能解釋自己的就是自己的過去──即今週的感染率當然最取決於上週、前週等的感染率。試數之下,發現上周、前周的滯後項統計顯著,但再加大前周就不行了。故先保留兩個y滯後項。

由於接種率是研究焦點,故務必保留,是第二批納入的變數。再run之下,即見無論滯後一或兩周都不顯著,當中滯後一周會好些少。第三要納入的,是上段提及第42至56直行的一堆,測試後發現很難同時放多於一個變數,否則皆不顯著。在兩個y滯後項和接種率之上,再將這十幾項逐個加進測試,發現當中僅人口密度、赤貧程度和洗手設施統計顯著。

手機用戶請按此放大圖表

若控制赤貧 中招率急降

根據三條迴歸分析的結果,若控制了赤貧程度,接種率升能使感染率顯著回落:接種率每高1%,將為百萬人口每日減0.49人感染;但在另外兩組迴歸卻無顯著效果。以目前初步所得,效果可能有的,但未肯定。然而,這跟文初的直觀推測大致脗合。

有些學術文章會做很多條迴歸或每條納入很多變數。區區本着簡單就是美的原則,不作此舉。最後,serial correlation未有處理,但書已指這不影響估值的consistency。

羅家聰

lawkachung@gmail.com

關心你飯碗,貼近你生活,即Like「蘋果ATM」FB專頁!
BannerBanner