連續性數據的 Meta 分析需要獲得各組數據的樣本量、均數、標準差。無法從文獻中直接獲取均數、標準差時,可對數據進行深度提取。本文介紹 8 種對數據進行深度提取的方法,并通過 2 項實例分析示范其應用過程。
引用本文: 劉海寧, 吳昊, 姚燦, 陳玉琢, 劉韜韜. Meta 分析中連續性數據的深度提取方法. 中國循證醫學雜志, 2017, 17(1): 117-121. doi: 10.7507/1672-2531.201612004 復制
Meta 分析是對來自 2 個或多個獨立研究結果的統計學合并。Meta 分析所合并的結局指標包含五大類,分別是二分類數據、連續性數據、有序數據、計數或率、時間-事件數據。其中,連續性數據意指在特定范圍內可取任何值的數據,如身高、體質量、面積等。對連續性數據進行 Meta 分析時,合并的統計量為“均數差”(mean difference,MD),即 2 組間均數的差值[1]。為求得 MD,需要獲得 2 組數據各自的樣本量、均數、標準差。在提取文獻中數據的過程中,所需數據可能無法直接提取,從而影響進一步的數據合并。這時,可以向文獻的通訊作者發郵件索要原始數據。另一方面,可以對數據進行一些處理,來獲取樣本量、均數、標準差,免去打擾文獻作者之虞。下面即針對多種不同情況介紹對連續性數據的深度提取的方法。
1 方法介紹
1.1 由中位數及最大值、最小值估算
對于文獻中非正態分布的數據,不適宜用均數和標準差描述數據的分布情況,亦無法使用t 檢驗,因此只報告中位數及最大值、最小值。2005 年,Hozo 等[2] 發表的《Estimating the mean and variance from the median, range, and the size of a sample》一文,介紹了使用中位數及最大值、最小值估算均數及標準差的方法。根據 Web of Science 網站的引文統計數據,截至 2016 年 12 月,該文獻被引 1 205 次,已成為 Meta 分析中連續性數據提取的國際通用并認可的方法。下面作一簡要介紹。
設樣本量為n,中位數為M,最小值為a,最大值為b,均數為m,標準差為SD。
當n>25 時,m =M
當n≤25 時,
$m = \frac{{a + 2M + b}}{4}$ |
當n≤15 時,
$SD = \sqrt {\frac{1}{{12}}\left( {\frac{{{{\left( {a - 2M + b} \right)}^2}}}{4} + {{\left( {b - a} \right)}^2}} \right)} $ |
當 15<n≤70 時,
$SD = \frac{{b - a}}{4}$ |
當n>70 時,
$SD = \frac{{b - a}}{6}$ |
該方法不要求研究對象為正態分布。其他分布類型,如 Log 分布、二項分布、指數分布、韋伯分布皆可以用此方法進行均數和標準差的估算。但值得注意的是,此方法僅僅是對均數和標準差的估算。對于未提供均數和標準差的文獻,仍然首選向通訊作者等索要原始數據。
1.2 由中位數和四分位數估算
一些文獻只報告中位數與較大、較小四分位數。2014 年,Wan 等[3] 發表的《Estimating the sample mean and standard deviation from the sample size, median, range and/or interquartile range》一文,介紹了使用中位數、四分位數估算均數、標準差的方法,下面作一簡要介紹。
設樣本量為n,中位數為M,較小四分位數(第一四分位數)為q1,較大四分位數(第三四分位數)為q3,均數為m,標準差為SD。
$m = \frac{{{q_1} + M + {q_3}}}{3}$ |
$SD = \frac{{{q_3} - {q_1}}}{{2 \times {\mu _{\rm{z}}}}} = \frac{{{q_3} - {q_1}}}{{2 \times \mu \left( {\displaystyle\frac{{0.25n + 0.375}}{{n + 0.25}}} \right)}}$ |
μz 可通過 Stata、Microsoft Excel 軟件或查表法計算。鑒于查表法所得出的數據精度不高,相比之下,軟件計算更有優勢。以 Stata 12.0 版本為例,輸入“di invnormal(1-z)”命令即可,其中,z 是具體數值,由樣本量計算得出,
${\rm{z}} = \frac{{0.25n + 0.375}}{{n + 0.25}}$ |
以 Microsoft Excel 2013 版本為例,在任意單元格中輸入“= norm.inv(1-z, 0, 1)”后按回車鍵即可,z 為具體數值。
該方法不要求研究對象為正態分布。其他分布類型,如 Log 分布、二項分布、指數分布、韋伯分布皆可以用此方法估算。該方法的另一項優勢在于其考慮到了樣本量的大小對估算值的影響。
1.3 從統計圖中截取數據
一些研究只給出統計圖,未寫明均數、標準差的具體數值。這種情況可以使用 Photoshop 軟件從統計圖中提取數據。以 Photoshop CS5 版本為例,打開圖片后,點擊“窗口”選項卡,再點擊“信息”選項,則會彈出“信息”窗口,可以顯示鼠標所指的點在圖片中對應的橫坐標與縱坐標的數值。如圖 1 所示,A、B 點為縱坐標軸上已知刻度值的 2 個點,2 個點對應的刻度值分別為a、b。C 點為“均數線”上的任意 1 個點,D 點為“誤差線”上的任意 1 個點,2 個點對應的縱坐標軸上的刻度分別為c、d(c 和d 的刻度值未知)。以上 4 個點在圖片中的坐標值可以通過 Photoshop 求得,分別為(x,y)。設均數為m,標準差為SD。

A、B 點為縱坐標軸上已知刻度值的 2 個點,2 個點對應的刻度值分別為a、b。C 點為“均數線”上的任意 1 個點,D 點為“誤差線”上的任意 1 個點,2 個點對應的縱坐標軸上的刻度分別為c、d(c 和d 的刻度值未知)。
由
$\frac{{b - a}}{{{y_B} - {y_A}}} = \frac{{c - b}}{{{y_C} - {y_B}}}$ |
可推得:
$m = {\rm{c}} = \frac{{\left( {{y_C} - {y_B}} \right)\left( {b - a} \right)}}{{{y_B} - {y_A}}} + b\quad \quad \quad $ |
同理,由
$\frac{{b - a}}{{{y_B} - {y_A}}} = \frac{{d - c}}{{{y_D} - {y_C}}}$ |
可推得:
$SD = d - c = \frac{{\left( {{y_D} - {y_C}} \right)\left( {b - a} \right)}}{{{y_B} - {y_A}}}$ |
同樣,對于非正態分布的數據,可通過箱式圖截取中位數、四分位數、最小值、最大值,再用 1.1 節、1.2 節所述方法進一步估測均數與標準差。該方法甚至可通過散點圖截取原始數據,再自行作統計分析。
值得一提的是,當統計圖清晰度不高時,可以使用 Photoshop 軟件中的放大圖片功能(按住 Alt 鍵并滑動鼠標滾輪可快速縮放圖片)。若圖片中某一個點對應多個像素點(坐標值也不同),可使鼠標指針統一指向同一方位(如左下方)的像素點,以此提高截取精度。
1.4 合并各亞組數據
部分文獻的研究對象可以分為多個亞組,有時僅僅給出各亞組的樣本量、均數、標準差。這時,需要合并各亞組的數據以求得總體。
設總體樣本量為n,各亞組樣本量分別為n1、n2、…、nk;總體均數為m,各亞組均數分別為m1、m2、…、mk;總體標準差為SD,各亞組標準差分別為SD1、SD2、…、SDk。
有 2 個亞組時,總體標準差即是兩樣本t 檢驗中的中間變量—— 合并方差(Sc2):
$\begin{array}{c} n = {n_1} + {n_2}\\ m = \left( {{n_1}{m_1} + {n_2}{m_2}} \right)/\left( {{n_1} + {n_2}} \right)\\ SD = \sqrt {\frac{{\left( {{n_1} - 1} \right)SD_1^2 + \left( {{n_2} - 1} \right)SD_2^2}}{{{n_1} + {n_2} - 2}}} \end{array}$ |
有 k 個亞組時:
$\begin{array}{c} n = {n_1} + {n_2} + \ldots + {n_k} = \mathop \sum \limits_{i = 1}^k {n_i}\\ m = \mathop \sum \limits_{i = 1}^k {n_i}{m_i}/\mathop \sum \limits_{i = 1}^k {n_i}\\ SD = \sqrt {\mathop \sum \limits_{i = 1}^k \left( {{n_i} - 1} \right)SD_i^2/\mathop \sum \limits_{i = 1}^k \left( {{n_i} - 1} \right)} \end{array}$ |
1.5 由均數的 95% 可信區間計算標準差
部分文獻只給出樣本量、均數及其 95% 可信區間,未給出標準差。均數、其 95% 可信區間的上、下限,三者給出其二即可。對于使用t 分布計算的均數的 95% 可信區間,可通過t0.05/2,ν 計算標準差。
設樣本量為n,均數為m,標準差為SD,均數的 95% 可信區間為(L,U),自由度為ν,則:
$\begin{array}{c} \nu = n - 1\\ m = \frac{{U + L}}{2}\\ SD = \frac{{\left( {U - m} \right)\sqrt n }}{{{t_{0.05/2,\nu }}}} = \frac{{\left( {m - L} \right)\sqrt n }}{{{t_{0.05/2,\nu }}}} \end{array}$ |
t0.05/2,ν 可由 Stata、Microsoft Excel 軟件或查表法求得。在 Stata 軟件中輸入“di invttail(ν, 0.025)”命令即可,其中ν 由具體的數值替代。在 Microsoft Excel 軟件的任意單元格中輸入“= t.inv.2t(0.05,ν)”或“= tinv(0.05,ν)”后按回車鍵即可,ν 為具體數值。
必須說明,應用此種方法的數據需要滿足正態性。對于使用t 分布計算的均數的 95% 可信區間,表明數據已被驗證滿足正態性,可以直接使用此種方法計算標準差。
1.6 由組間的P 值、t 值、標準誤、95% 可信區間計算標準差
部分文獻給出了試驗組與對照組各自的樣本量、均數,這時,只需知道兩組間的P 值、t 值、標準誤、均數差的 95% 可信區間中的任何一個,即可計算兩組的“平均標準差”。進一步作 Meta 分析時,兩組各自的標準差都使用該“平均標準差”。
設兩組樣本量分別為n1、n2,均數分別為m1、m2(假設m1>m2),平均標準差為SD。組間標準誤為s,均數差為Δm,均數差的 95% 可信區間為(L,U),總自由度為ν。則:
$\begin{array}{c} \nu = {n_1} + {n_2} - 2\\ \Delta m = {m_1} - {m_2}\\ \Delta m = \frac{{U + L}}{2} \end{array}$ |
平均標準差SD 由組間標準誤s 計算:
$SD = \frac{s}{{\sqrt {\frac{1}{{{n_1}}} + \frac{1}{{{n_2}}}} }}$ |
組間標準誤s 可由t 值計算:
$s = \frac{{\Delta m}}{t}$ |
也可由均數差的 95% 可信區間計算:
$s = \frac{{U - \Delta m}}{{{t_{0.05/2,\nu }}}} = \frac{{\Delta m - L}}{{{t_{0.05/2,\nu }}}} = \frac{{U - L}}{{2 \times {t_{0.05/2,\nu }}}}$ |
其中,t0.05/2,ν 的計算方法已在 1.5 節中詳述。
t 值(即tP/2,ν)通常會直接給出,也可由P 值計算。已知P 的值,在 Stata 軟件中輸入“di invttail(ν,P/2)”命令即可,其中ν、P 由具體的數值替代。或在 Microsoft Excel 軟件的任意單元格中輸入“= t.inv.2t(P,ν)”或“= tinv(P,ν)”后按回車鍵即可,P、ν 為具體數值。
一些文獻不給出具體的P 值,而是P 值的范圍,如P<0.05,P<0.001。這時,可以采用保守的辦法,取P 值的上限,如P<0.05 時假定P = 0.05,P<0.001 時假定P = 0.001。這樣做的缺陷也是顯而易見的—— 平均標準差被高估。
1.7 其他
部分文獻的原始數據為偏態分布,將原始數據取對數后則為正態分布,因此僅報告取對數后的均數及其 95% 可信區間。諸如血甘油三酯、腫瘤標志物的濃度在病例組常會出現偏態分布。Cochrane 手冊建議取對數后的均數再取反對數,則可得到原始數據的幾何均數[1]。對可信區間數據取反對數,再應用 1.5 節所述方法可計算原始數據的標準差。需要指出,此方法計算出的均數為原始數據的幾何均數,而非算數均數。Higgins 等[4] 發表的《Meta-analysis of skewed data: Combining results reported on log-transformed or raw scales》一文,提供 3 種處理偏態數據的方法并作出評價。這些方法涉及 Taylor 級數,計算較為復雜,此文暫不介紹。
部分文獻僅給出每組的樣本量、均數,未給出標準差,且無法用以上介紹的方法估算。在向文獻通訊作者索要原始數據未果的情況下,此文獻的標準差出現缺失。若放棄納入此文獻,可能會造成信息缺失與偏倚。這時,可利用其他相似的 Meta 分析,或者用本研究中其他納入文獻所計算出的均數差的標準差,作為缺失文獻的每組的平均標準差。Furukawa 等[5]的研究表明,當納入文獻較多,而缺失標準差的文獻較少時,用此方法填補缺失值對 Meta 分析的結果影響甚微。反之,當納入文獻較少,而缺失標準差的文獻較多時,結果的可靠性較低。此方法真正被利用的是樣本量與均數,標準差是假設的統計量,因此 Cochrane 手冊認為“除非迫不得已,否則應避免使用”。
2 實例分析
2.1 實例一
利用 Meta 分析研究腸易激綜合征(irritable bowel syndrome,IBS)患者的腸道雙歧桿菌表達量較健康人的變化。Malinen 等[6] 的研究給出腹瀉型、交替型、便秘型 3 個亞型患者各自的樣本量、均數與其 95% 可信區間的上限,見表 1。

在 Stata 12.0 軟件中輸入“di invttail(11, 0.025)”,得到t0.05/2,11 為 2.201。進一步可求得腹瀉型亞組的標準差:
$ \begin{aligned} S{D_1} = & \frac{{\left( {{U_1} - {m_1}} \right)\sqrt {{n_1}} }}{{{t_{0.05/2,\nu }}}} =\\ & \frac{{\left( {9.57 - 9.20} \right) \times \sqrt {12} }}{{2.201}} = 0.582 \end{aligned}$ |
同理,求得交替型亞組的標準差SD2 = 0.305,便秘型亞組的標準差SD3 = 0.403。
可求出 IBS 組的總體樣本量為:
總體均數為:
$m = \frac{{9.20 \times 12 + 8.85 \times 6 + 9.45 \times 9}}{{27}} = 9.206$ |
總體標準差為:
$\begin{aligned} SD =\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad \\ \!\!\!\!\! \sqrt {\frac{{\left( {{n_1} - 1} \right)SD_1^2 + \left( {{n_2} - 1} \right)SD_2^2 + \left( {{n_3} - 1} \right)SD_3^2}}{{{n_1} + {n_2} + {n_3} - 3}}} = \\ \!\!\!\!\!\sqrt {\frac{{11 \times {{0.582}^2} + 5 \times {{0.305}^2} + 8 \times {{0.403}^2}}}{{27 - 3}}}= 0.478 \end{aligned}$ |
2.2 實例二
利用 Meta 分析研究結直腸癌、大腸息肉、炎癥性腸病患者血清 microRNA-92a 的表達量。Ramzy 等[7] 的研究給出結直腸癌、大腸息肉、炎癥性腸病患者各自 microRNA-92a 的中位數、四分位數、最大值及最小值,見圖 2。結直腸癌、大腸息肉、炎癥性腸病樣本量分別為 25、14、11。

使用 Photoshop 軟件打開圖片,調出“信息”窗口,移動鼠標至各組中位數、最大值、最小值所在線段,記錄在圖 2 中的縱坐標。結直腸癌組對應的中位數、最大值、最小值的圖 2 中的縱坐標分別為 11.68、2.15、15.27,大腸息肉組分別為 11.84、4.16、15.11,炎癥性腸病組分別為 13.05、2.54、14.72。5.0 刻度線與 10.0 刻度線對應的點在圖 2 的縱坐標為 10.99、6.51。
結直腸癌組中位數為:
${M_1} = \frac{{\left( {11.68 - 10.99} \right) \times \left( {5 - 10} \right)}}{{10.99 - 6.51}} + 5 = 4.23$ |
最大值為:
${b_1} = \frac{{\left( {2.15 - 10.99} \right) \times \left( {5 - 10} \right)}}{{10.99 - 6.51}} + 5 = 14.87$ |
最小值為:
${a_1} = \frac{{\left( {15.27 - 10.99} \right) \times \left( {5 - 10} \right)}}{{10.99 - 6.51}} + 5 = 0.22$ |
同理,大腸息肉組的中位數、最大值、最小值分別為 4.05、12.62、0.40,炎癥性腸病組分別為 2.70、14.43、0.84。
接下來由中位數及最大值、最小值估算均數、標準差。
結直腸癌組樣本量為 25,在 15 至 70 之間。
$\begin{aligned} {m_1} & = \frac{{{a_1} + 2{M_1} + {b_1}}}{4} = \frac{{0.22 + 2 \times 4.23 + 14.87}}{4} \\ & = 5.59 \end{aligned}$ |
$S{D_1} = \frac{{{b_1} - {a_1}}}{4} = \frac{{14.87 - 0.22}}{4} = 3.66$ |
大腸息肉組的樣本量 14<25,且<15。
$\begin{aligned} {m_2} & = \frac{{{a_2} + 2{M_2} + {b_2}}}{4} = \frac{{0.40 + 2 \times 4.05 + 4.05}}{4}\\ & = 5.28\end{aligned}$ |
$S{D_2}\! =\!\! \sqrt {\frac{1}{{12}}\left( {\frac{{{{\left( {{a_2} - 2{M_2} + {b_2}} \right)}^2}}}{4} + {{\left( {{b_2} - {a_2}} \right)}^2}} \right)}\!\! =\!\! 3.60$ |
同理,炎癥性腸病組的樣本量 11<25,且<15,可求出m3 = 5.17,SD3 = 4.17。
3 討論
在 Meta 分析的數據合成過程中,數據缺失是常見情況。對連續性數據進行 Meta 分析需要獲得 2 個組各自的樣本量、均數、標準差。其中標準差是最常缺失的數據。此時最好的辦法是向通訊作者索要數據。然而,這種方法速度慢,常得不到作者的回應,有的作者甚至會宣稱原始數據已丟失。
本文介紹了 8 種對連續性數據進行深度提取的方法,在無法從文獻作者處獲取原始數據時可以應用。這些方法各有其局限性,且對原始數據的分布類型有不同要求。通過這些方法所獲得的數據的精確程度也不相同(表 2)。因此,在提取數據時需格外注意其應用范圍。

Meta 分析是對來自 2 個或多個獨立研究結果的統計學合并。Meta 分析所合并的結局指標包含五大類,分別是二分類數據、連續性數據、有序數據、計數或率、時間-事件數據。其中,連續性數據意指在特定范圍內可取任何值的數據,如身高、體質量、面積等。對連續性數據進行 Meta 分析時,合并的統計量為“均數差”(mean difference,MD),即 2 組間均數的差值[1]。為求得 MD,需要獲得 2 組數據各自的樣本量、均數、標準差。在提取文獻中數據的過程中,所需數據可能無法直接提取,從而影響進一步的數據合并。這時,可以向文獻的通訊作者發郵件索要原始數據。另一方面,可以對數據進行一些處理,來獲取樣本量、均數、標準差,免去打擾文獻作者之虞。下面即針對多種不同情況介紹對連續性數據的深度提取的方法。
1 方法介紹
1.1 由中位數及最大值、最小值估算
對于文獻中非正態分布的數據,不適宜用均數和標準差描述數據的分布情況,亦無法使用t 檢驗,因此只報告中位數及最大值、最小值。2005 年,Hozo 等[2] 發表的《Estimating the mean and variance from the median, range, and the size of a sample》一文,介紹了使用中位數及最大值、最小值估算均數及標準差的方法。根據 Web of Science 網站的引文統計數據,截至 2016 年 12 月,該文獻被引 1 205 次,已成為 Meta 分析中連續性數據提取的國際通用并認可的方法。下面作一簡要介紹。
設樣本量為n,中位數為M,最小值為a,最大值為b,均數為m,標準差為SD。
當n>25 時,m =M
當n≤25 時,
$m = \frac{{a + 2M + b}}{4}$ |
當n≤15 時,
$SD = \sqrt {\frac{1}{{12}}\left( {\frac{{{{\left( {a - 2M + b} \right)}^2}}}{4} + {{\left( {b - a} \right)}^2}} \right)} $ |
當 15<n≤70 時,
$SD = \frac{{b - a}}{4}$ |
當n>70 時,
$SD = \frac{{b - a}}{6}$ |
該方法不要求研究對象為正態分布。其他分布類型,如 Log 分布、二項分布、指數分布、韋伯分布皆可以用此方法進行均數和標準差的估算。但值得注意的是,此方法僅僅是對均數和標準差的估算。對于未提供均數和標準差的文獻,仍然首選向通訊作者等索要原始數據。
1.2 由中位數和四分位數估算
一些文獻只報告中位數與較大、較小四分位數。2014 年,Wan 等[3] 發表的《Estimating the sample mean and standard deviation from the sample size, median, range and/or interquartile range》一文,介紹了使用中位數、四分位數估算均數、標準差的方法,下面作一簡要介紹。
設樣本量為n,中位數為M,較小四分位數(第一四分位數)為q1,較大四分位數(第三四分位數)為q3,均數為m,標準差為SD。
$m = \frac{{{q_1} + M + {q_3}}}{3}$ |
$SD = \frac{{{q_3} - {q_1}}}{{2 \times {\mu _{\rm{z}}}}} = \frac{{{q_3} - {q_1}}}{{2 \times \mu \left( {\displaystyle\frac{{0.25n + 0.375}}{{n + 0.25}}} \right)}}$ |
μz 可通過 Stata、Microsoft Excel 軟件或查表法計算。鑒于查表法所得出的數據精度不高,相比之下,軟件計算更有優勢。以 Stata 12.0 版本為例,輸入“di invnormal(1-z)”命令即可,其中,z 是具體數值,由樣本量計算得出,
${\rm{z}} = \frac{{0.25n + 0.375}}{{n + 0.25}}$ |
以 Microsoft Excel 2013 版本為例,在任意單元格中輸入“= norm.inv(1-z, 0, 1)”后按回車鍵即可,z 為具體數值。
該方法不要求研究對象為正態分布。其他分布類型,如 Log 分布、二項分布、指數分布、韋伯分布皆可以用此方法估算。該方法的另一項優勢在于其考慮到了樣本量的大小對估算值的影響。
1.3 從統計圖中截取數據
一些研究只給出統計圖,未寫明均數、標準差的具體數值。這種情況可以使用 Photoshop 軟件從統計圖中提取數據。以 Photoshop CS5 版本為例,打開圖片后,點擊“窗口”選項卡,再點擊“信息”選項,則會彈出“信息”窗口,可以顯示鼠標所指的點在圖片中對應的橫坐標與縱坐標的數值。如圖 1 所示,A、B 點為縱坐標軸上已知刻度值的 2 個點,2 個點對應的刻度值分別為a、b。C 點為“均數線”上的任意 1 個點,D 點為“誤差線”上的任意 1 個點,2 個點對應的縱坐標軸上的刻度分別為c、d(c 和d 的刻度值未知)。以上 4 個點在圖片中的坐標值可以通過 Photoshop 求得,分別為(x,y)。設均數為m,標準差為SD。

A、B 點為縱坐標軸上已知刻度值的 2 個點,2 個點對應的刻度值分別為a、b。C 點為“均數線”上的任意 1 個點,D 點為“誤差線”上的任意 1 個點,2 個點對應的縱坐標軸上的刻度分別為c、d(c 和d 的刻度值未知)。
由
$\frac{{b - a}}{{{y_B} - {y_A}}} = \frac{{c - b}}{{{y_C} - {y_B}}}$ |
可推得:
$m = {\rm{c}} = \frac{{\left( {{y_C} - {y_B}} \right)\left( {b - a} \right)}}{{{y_B} - {y_A}}} + b\quad \quad \quad $ |
同理,由
$\frac{{b - a}}{{{y_B} - {y_A}}} = \frac{{d - c}}{{{y_D} - {y_C}}}$ |
可推得:
$SD = d - c = \frac{{\left( {{y_D} - {y_C}} \right)\left( {b - a} \right)}}{{{y_B} - {y_A}}}$ |
同樣,對于非正態分布的數據,可通過箱式圖截取中位數、四分位數、最小值、最大值,再用 1.1 節、1.2 節所述方法進一步估測均數與標準差。該方法甚至可通過散點圖截取原始數據,再自行作統計分析。
值得一提的是,當統計圖清晰度不高時,可以使用 Photoshop 軟件中的放大圖片功能(按住 Alt 鍵并滑動鼠標滾輪可快速縮放圖片)。若圖片中某一個點對應多個像素點(坐標值也不同),可使鼠標指針統一指向同一方位(如左下方)的像素點,以此提高截取精度。
1.4 合并各亞組數據
部分文獻的研究對象可以分為多個亞組,有時僅僅給出各亞組的樣本量、均數、標準差。這時,需要合并各亞組的數據以求得總體。
設總體樣本量為n,各亞組樣本量分別為n1、n2、…、nk;總體均數為m,各亞組均數分別為m1、m2、…、mk;總體標準差為SD,各亞組標準差分別為SD1、SD2、…、SDk。
有 2 個亞組時,總體標準差即是兩樣本t 檢驗中的中間變量—— 合并方差(Sc2):
$\begin{array}{c} n = {n_1} + {n_2}\\ m = \left( {{n_1}{m_1} + {n_2}{m_2}} \right)/\left( {{n_1} + {n_2}} \right)\\ SD = \sqrt {\frac{{\left( {{n_1} - 1} \right)SD_1^2 + \left( {{n_2} - 1} \right)SD_2^2}}{{{n_1} + {n_2} - 2}}} \end{array}$ |
有 k 個亞組時:
$\begin{array}{c} n = {n_1} + {n_2} + \ldots + {n_k} = \mathop \sum \limits_{i = 1}^k {n_i}\\ m = \mathop \sum \limits_{i = 1}^k {n_i}{m_i}/\mathop \sum \limits_{i = 1}^k {n_i}\\ SD = \sqrt {\mathop \sum \limits_{i = 1}^k \left( {{n_i} - 1} \right)SD_i^2/\mathop \sum \limits_{i = 1}^k \left( {{n_i} - 1} \right)} \end{array}$ |
1.5 由均數的 95% 可信區間計算標準差
部分文獻只給出樣本量、均數及其 95% 可信區間,未給出標準差。均數、其 95% 可信區間的上、下限,三者給出其二即可。對于使用t 分布計算的均數的 95% 可信區間,可通過t0.05/2,ν 計算標準差。
設樣本量為n,均數為m,標準差為SD,均數的 95% 可信區間為(L,U),自由度為ν,則:
$\begin{array}{c} \nu = n - 1\\ m = \frac{{U + L}}{2}\\ SD = \frac{{\left( {U - m} \right)\sqrt n }}{{{t_{0.05/2,\nu }}}} = \frac{{\left( {m - L} \right)\sqrt n }}{{{t_{0.05/2,\nu }}}} \end{array}$ |
t0.05/2,ν 可由 Stata、Microsoft Excel 軟件或查表法求得。在 Stata 軟件中輸入“di invttail(ν, 0.025)”命令即可,其中ν 由具體的數值替代。在 Microsoft Excel 軟件的任意單元格中輸入“= t.inv.2t(0.05,ν)”或“= tinv(0.05,ν)”后按回車鍵即可,ν 為具體數值。
必須說明,應用此種方法的數據需要滿足正態性。對于使用t 分布計算的均數的 95% 可信區間,表明數據已被驗證滿足正態性,可以直接使用此種方法計算標準差。
1.6 由組間的P 值、t 值、標準誤、95% 可信區間計算標準差
部分文獻給出了試驗組與對照組各自的樣本量、均數,這時,只需知道兩組間的P 值、t 值、標準誤、均數差的 95% 可信區間中的任何一個,即可計算兩組的“平均標準差”。進一步作 Meta 分析時,兩組各自的標準差都使用該“平均標準差”。
設兩組樣本量分別為n1、n2,均數分別為m1、m2(假設m1>m2),平均標準差為SD。組間標準誤為s,均數差為Δm,均數差的 95% 可信區間為(L,U),總自由度為ν。則:
$\begin{array}{c} \nu = {n_1} + {n_2} - 2\\ \Delta m = {m_1} - {m_2}\\ \Delta m = \frac{{U + L}}{2} \end{array}$ |
平均標準差SD 由組間標準誤s 計算:
$SD = \frac{s}{{\sqrt {\frac{1}{{{n_1}}} + \frac{1}{{{n_2}}}} }}$ |
組間標準誤s 可由t 值計算:
$s = \frac{{\Delta m}}{t}$ |
也可由均數差的 95% 可信區間計算:
$s = \frac{{U - \Delta m}}{{{t_{0.05/2,\nu }}}} = \frac{{\Delta m - L}}{{{t_{0.05/2,\nu }}}} = \frac{{U - L}}{{2 \times {t_{0.05/2,\nu }}}}$ |
其中,t0.05/2,ν 的計算方法已在 1.5 節中詳述。
t 值(即tP/2,ν)通常會直接給出,也可由P 值計算。已知P 的值,在 Stata 軟件中輸入“di invttail(ν,P/2)”命令即可,其中ν、P 由具體的數值替代。或在 Microsoft Excel 軟件的任意單元格中輸入“= t.inv.2t(P,ν)”或“= tinv(P,ν)”后按回車鍵即可,P、ν 為具體數值。
一些文獻不給出具體的P 值,而是P 值的范圍,如P<0.05,P<0.001。這時,可以采用保守的辦法,取P 值的上限,如P<0.05 時假定P = 0.05,P<0.001 時假定P = 0.001。這樣做的缺陷也是顯而易見的—— 平均標準差被高估。
1.7 其他
部分文獻的原始數據為偏態分布,將原始數據取對數后則為正態分布,因此僅報告取對數后的均數及其 95% 可信區間。諸如血甘油三酯、腫瘤標志物的濃度在病例組常會出現偏態分布。Cochrane 手冊建議取對數后的均數再取反對數,則可得到原始數據的幾何均數[1]。對可信區間數據取反對數,再應用 1.5 節所述方法可計算原始數據的標準差。需要指出,此方法計算出的均數為原始數據的幾何均數,而非算數均數。Higgins 等[4] 發表的《Meta-analysis of skewed data: Combining results reported on log-transformed or raw scales》一文,提供 3 種處理偏態數據的方法并作出評價。這些方法涉及 Taylor 級數,計算較為復雜,此文暫不介紹。
部分文獻僅給出每組的樣本量、均數,未給出標準差,且無法用以上介紹的方法估算。在向文獻通訊作者索要原始數據未果的情況下,此文獻的標準差出現缺失。若放棄納入此文獻,可能會造成信息缺失與偏倚。這時,可利用其他相似的 Meta 分析,或者用本研究中其他納入文獻所計算出的均數差的標準差,作為缺失文獻的每組的平均標準差。Furukawa 等[5]的研究表明,當納入文獻較多,而缺失標準差的文獻較少時,用此方法填補缺失值對 Meta 分析的結果影響甚微。反之,當納入文獻較少,而缺失標準差的文獻較多時,結果的可靠性較低。此方法真正被利用的是樣本量與均數,標準差是假設的統計量,因此 Cochrane 手冊認為“除非迫不得已,否則應避免使用”。
2 實例分析
2.1 實例一
利用 Meta 分析研究腸易激綜合征(irritable bowel syndrome,IBS)患者的腸道雙歧桿菌表達量較健康人的變化。Malinen 等[6] 的研究給出腹瀉型、交替型、便秘型 3 個亞型患者各自的樣本量、均數與其 95% 可信區間的上限,見表 1。

在 Stata 12.0 軟件中輸入“di invttail(11, 0.025)”,得到t0.05/2,11 為 2.201。進一步可求得腹瀉型亞組的標準差:
$ \begin{aligned} S{D_1} = & \frac{{\left( {{U_1} - {m_1}} \right)\sqrt {{n_1}} }}{{{t_{0.05/2,\nu }}}} =\\ & \frac{{\left( {9.57 - 9.20} \right) \times \sqrt {12} }}{{2.201}} = 0.582 \end{aligned}$ |
同理,求得交替型亞組的標準差SD2 = 0.305,便秘型亞組的標準差SD3 = 0.403。
可求出 IBS 組的總體樣本量為:
總體均數為:
$m = \frac{{9.20 \times 12 + 8.85 \times 6 + 9.45 \times 9}}{{27}} = 9.206$ |
總體標準差為:
$\begin{aligned} SD =\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad \\ \!\!\!\!\! \sqrt {\frac{{\left( {{n_1} - 1} \right)SD_1^2 + \left( {{n_2} - 1} \right)SD_2^2 + \left( {{n_3} - 1} \right)SD_3^2}}{{{n_1} + {n_2} + {n_3} - 3}}} = \\ \!\!\!\!\!\sqrt {\frac{{11 \times {{0.582}^2} + 5 \times {{0.305}^2} + 8 \times {{0.403}^2}}}{{27 - 3}}}= 0.478 \end{aligned}$ |
2.2 實例二
利用 Meta 分析研究結直腸癌、大腸息肉、炎癥性腸病患者血清 microRNA-92a 的表達量。Ramzy 等[7] 的研究給出結直腸癌、大腸息肉、炎癥性腸病患者各自 microRNA-92a 的中位數、四分位數、最大值及最小值,見圖 2。結直腸癌、大腸息肉、炎癥性腸病樣本量分別為 25、14、11。

使用 Photoshop 軟件打開圖片,調出“信息”窗口,移動鼠標至各組中位數、最大值、最小值所在線段,記錄在圖 2 中的縱坐標。結直腸癌組對應的中位數、最大值、最小值的圖 2 中的縱坐標分別為 11.68、2.15、15.27,大腸息肉組分別為 11.84、4.16、15.11,炎癥性腸病組分別為 13.05、2.54、14.72。5.0 刻度線與 10.0 刻度線對應的點在圖 2 的縱坐標為 10.99、6.51。
結直腸癌組中位數為:
${M_1} = \frac{{\left( {11.68 - 10.99} \right) \times \left( {5 - 10} \right)}}{{10.99 - 6.51}} + 5 = 4.23$ |
最大值為:
${b_1} = \frac{{\left( {2.15 - 10.99} \right) \times \left( {5 - 10} \right)}}{{10.99 - 6.51}} + 5 = 14.87$ |
最小值為:
${a_1} = \frac{{\left( {15.27 - 10.99} \right) \times \left( {5 - 10} \right)}}{{10.99 - 6.51}} + 5 = 0.22$ |
同理,大腸息肉組的中位數、最大值、最小值分別為 4.05、12.62、0.40,炎癥性腸病組分別為 2.70、14.43、0.84。
接下來由中位數及最大值、最小值估算均數、標準差。
結直腸癌組樣本量為 25,在 15 至 70 之間。
$\begin{aligned} {m_1} & = \frac{{{a_1} + 2{M_1} + {b_1}}}{4} = \frac{{0.22 + 2 \times 4.23 + 14.87}}{4} \\ & = 5.59 \end{aligned}$ |
$S{D_1} = \frac{{{b_1} - {a_1}}}{4} = \frac{{14.87 - 0.22}}{4} = 3.66$ |
大腸息肉組的樣本量 14<25,且<15。
$\begin{aligned} {m_2} & = \frac{{{a_2} + 2{M_2} + {b_2}}}{4} = \frac{{0.40 + 2 \times 4.05 + 4.05}}{4}\\ & = 5.28\end{aligned}$ |
$S{D_2}\! =\!\! \sqrt {\frac{1}{{12}}\left( {\frac{{{{\left( {{a_2} - 2{M_2} + {b_2}} \right)}^2}}}{4} + {{\left( {{b_2} - {a_2}} \right)}^2}} \right)}\!\! =\!\! 3.60$ |
同理,炎癥性腸病組的樣本量 11<25,且<15,可求出m3 = 5.17,SD3 = 4.17。
3 討論
在 Meta 分析的數據合成過程中,數據缺失是常見情況。對連續性數據進行 Meta 分析需要獲得 2 個組各自的樣本量、均數、標準差。其中標準差是最常缺失的數據。此時最好的辦法是向通訊作者索要數據。然而,這種方法速度慢,常得不到作者的回應,有的作者甚至會宣稱原始數據已丟失。
本文介紹了 8 種對連續性數據進行深度提取的方法,在無法從文獻作者處獲取原始數據時可以應用。這些方法各有其局限性,且對原始數據的分布類型有不同要求。通過這些方法所獲得的數據的精確程度也不相同(表 2)。因此,在提取數據時需格外注意其應用范圍。
