0.双因素方差分析的分类

  • 无交互作用的方差分析
    假定因素AAA和因素BBB的效应之间是相互独立的,不存在相互关系。
  • 有交互作用的方差分析
    假定因素AAA和因素BBB的结合会产生出一种新的效应。

无交互作用的双因素方差分析

1.形式

假定要考察两个因素A,BA,BA,B对某项指标的影响,因素AAA取sss个水平A1,A2,…,AsA_{1}, A_{2}, \dots, A_{s}A1​,A2​,…,As​,因素BBB取rrr个水平B1,B2,…,BrB_{1}, B_{2}, \dots, B_{r}B1​,B2​,…,Br​,在A,BA,BA,B的每队组合水平(Ai,Bj)\left(A_{i}, B_{j}\right)(Ai​,Bj​)上作一次试验,试验结果为Xij,i=1,…,s;j=1,…,rX_{i j}, i=1, \dots, s ;\space j=1, \dots, rXij​,i=1,…,s; j=1,…,r。所有XijX_{ij}Xij​独立,数据列于下表:

因素 B1B_1B1​ B2B_2B2​ BsB_sBs​
A1A_1A1​ X11X_{11}X11​ X12X_{12}X12​ X1sX_{1s}X1s​
A2A_2A2​ X21X_{21}X21​ X22X_{22}X22​ X2sX_{2s}X2s​
ArA_rAr​ Xr1X_{r1}Xr1​ Xr2X_{r2}Xr2​ XrsX_{rs}Xrs​

2.前期工作

  • 作出假设
    设搭配(Ai,Bj)\left(A_{i}, B_{j}\right)(Ai​,Bj​)下的试验结果为XijX_{ij}Xij​,假定Xij∼N(aij,σ2)X_{i j} \sim N\left(a_{i j}, \sigma^{2}\right)Xij​∼N(aij​,σ2),则问题归结为检验假设:
    H0A:a1j=a2j=⋯=ajj,j=1,2,⋯,sH0B:ai1=ai2=⋯=air,i=1,2,⋯,r\begin{aligned} &H_{0 A}: a_{1 j}=a_{2 j}=\cdots=a_{j j}, j=1,2, \cdots, s\\ &H_{0 B}: a_{i 1}=a_{i 2}=\cdots=a_{i r}, i=1,2, \cdots, r \end{aligned} ​H0A​:a1j​=a2j​=⋯=ajj​,j=1,2,⋯,sH0B​:ai1​=ai2​=⋯=air​,i=1,2,⋯,r​
  • 平方和分解
    与单因素方差分析类似地:
    SAS_ASA​是由因素AAA的不同效应和随机误差引起的偏差
    SBS_BSB​是由因素BBB的不同效应和随机误差引起的偏差
    SeS_eSe​是由随机误差引起的偏差
    记:
    n=rs,Xˉi=1s∑j=1sXij,Xˉ⋅j=1r∑i=1rXijTi⋅=∑j=1sXij,T⋅j=∑i=1rXijXˉ=1rs∑i=1r∑j=1sXij,T=∑i=1r∑j=1sXiji=1,2,⋯,r;j=1,2,⋯,sn=r s, \bar{X}_{i}=\frac{1}{s} \sum_{j=1}^{s} X_{i j}, \bar{X}_{\cdot j}=\frac{1}{r} \sum_{i=1}^{r} X_{i j}\\ T_{i \cdot}=\sum_{j=1}^{s} X_{i j}, T_{\cdot j}=\sum_{i=1}^{r} X_{i j}\\ \bar{X}=\frac{1}{r s} \sum_{i=1}^{r} \sum_{j=1}^{s} X_{i j}, T=\sum_{i=1}^{r} \sum_{j=1}^{s} X_{i j}\\ i=1,2, \cdots, r ; j=1,2, \cdots, s n=rs,Xˉi​=s1​j=1∑s​Xij​,Xˉ⋅j​=r1​i=1∑r​Xij​Ti⋅​=j=1∑s​Xij​,T⋅j​=i=1∑r​Xij​Xˉ=rs1​i=1∑r​j=1∑s​Xij​,T=i=1∑r​j=1∑s​Xij​i=1,2,⋯,r;j=1,2,⋯,s
    于是:
    ST=∑i=1r∑j=1sXij2−T2rs,SA=1s∑i=1rTi⋅2−T2rsSB=1r∑j=1sT⋅j2−T2rs,Se=ST−SA−SBS_{T}=\sum_{i=1}^{r} \sum_{j=1}^{s} X_{i j}^{2}-\frac{T^{2}}{r s}, S_{A}=\frac{1}{s} \sum_{i=1}^{r} T_{i \cdot}^{2}-\frac{T^{2}}{r s}\\ S_{B}=\frac{1}{r} \sum_{j=1}^{s} T_{\cdot j}^{2}-\frac{T^{2}}{r s},S_{e}=S_{T}-S_{A}-S_{B} ST​=i=1∑r​j=1∑s​Xij2​−rsT2​,SA​=s1​i=1∑r​Ti⋅2​−rsT2​SB​=r1​j=1∑s​T⋅j2​−rsT2​,Se​=ST​−SA​−SB​

3.检验假设

比较SAS_ASA​与SES_ESE​的值来检验假设H0AH_{0A}H0A​
比较SBS_BSB​与SES_ESE​的值来检验假设H0BH_{0B}H0B​

  • 定理
    ST,SA,SBS_T,S_A,S_BST​,SA​,SB​相互独立,且1σ2Se∼χ2((s−1)(r−1))\frac{1}{\sigma^{2}} S_{e} \sim \chi^{2}((s-1)(r-1))σ21​Se​∼χ2((s−1)(r−1))
    当H0AH_{0A}H0A​成立时,有:
    FA=SA/σ2r−1/Se/σ2(r−1)(s−1)=(s−1)SASe∼F(r−1,(r−1)(s−1))F_{A}=\frac{S_{A} / \sigma^{2}}{r-1} / \frac{S_{e} / \sigma^{2}}{(r-1)(s-1)}=\frac{(s-1) S_{A}}{S_{e}} \sim F(r-1,(r-1)(s-1))FA​=r−1SA​/σ2​/(r−1)(s−1)Se​/σ2​=Se​(s−1)SA​​∼F(r−1,(r−1)(s−1))
    当H0BH_{0B}H0B​成立时,有:
    FB=SB/σ2s−1/Se/σ2(r−1)(s−1)=(r−1)SASe∼F(s−1,(r−1)(s−1))F_{B}=\frac{S_{B} / \sigma^{2}}{s-1} / \frac{S_{e} / \sigma^{2}}{(r-1)(s-1)}=\frac{(r-1) S_{A}}{S_{e}} \sim F(s-1,(r-1)(s-1))FB​=s−1SB​/σ2​/(r−1)(s−1)Se​/σ2​=Se​(r−1)SA​​∼F(s−1,(r−1)(s−1))
  • 拒绝域
    H0AH_{0A}H0A​的拒绝域为:
    FA≥Fα(s−1,(s−1)(r−1))F_{A} \geq F_{\alpha}(s-1,(s-1)(r-1))FA​≥Fα​(s−1,(s−1)(r−1))
    H0BH_{0B}H0B​的拒绝域为:
    FB≥Fα(r−1,(s−1)(r−1))F_{B} \geq F_{\alpha}(r-1,(s-1)(r-1))FB​≥Fα​(r−1,(s−1)(r−1))
  • 方差分析表
    |方差来源 |平方和 |自由度 |FFF值 |临界值 |
    | :------------: | :------------: | :------------: | :------------: | :------------: |
    |因素AAA |SAS_ASA​ |r−1r-1r−1 |FA=(s−1)SASeF_{A}=\frac{(s-1) S_{A}}{S_{e}}FA​=Se​(s−1)SA​​ |FAαF_{A\alpha}FAα​ |
    |因素BBB |SBS_BSB​ |s−1s-1s−1 |FB=(r−1)SBSeF_{B}=\frac{(r-1) S_{B}}{S_{e}}FB​=Se​(r−1)SB​​ |FBαF_{B\alpha}FBα​ |
    |试验误差 |SeS_eSe​ |(r−1)(s−1)(r-1)(s-1)(r−1)(s−1) | | |
    |总和 |STS_TST​ |n−1n-1n−1 | | |

4.实现

  • 例题
    为了研究不同地点,不同季节大气飘尘含量的差异性,对地点AAA取三个不同水平,对季节BBB取四个不同水平,在不同组合(A_i,B_j)下各测一次大气飘尘含量,结果建下表,请问研究地点间的差异和季节间的差异对大气飘尘含量有无影响? (α=0.05)(\alpha=0.05)(α=0.05)
因素 B1B_1B1​ B2B_2B2​ B3B_3B3​ B4B_4B4​
A1A_1A1​ 1.150 0.614 0.475 0.667
A2A_2A2​ 1.200 0.620 0.420 0.880
A3A_3A3​ 0.940 0.379 0.200 0.540
  • Excel求解
    录入数据:

    在方差分析选项中选择“无重复双因素方差分析”,选中分析区域,α\alphaα设为0.05,单击“确定”:

    可在新工作表中看到结果:

  • MATLAB求解

function annova_solve()x = [1.150, 0.614, 0.475, 0.667;1.200, 0.620, 0.420, 0.880;0.940, 0.379, 0.200, 0.540];p = anova2(x);
end

运行结果:

  • Python求解
import pandas as pd
from statsmodels.formula.api import ols
from statsmodels.stats.anova import anova_lmdf = pd.read_csv('D:\Data\ex_2way_annova.csv')
print(df)
model = ols('content ~ season + location', data = df).fit()
table = anova_lm(model)
print(table)

运行结果:

  • 结论
    FA=23.848>FAα=10.92,FB=88.848>FBα=9.78F_{A}=23.848>F_{A \alpha}=10.92, F_{B}=88.848>F_{B \alpha}=9.78FA​=23.848>FAα​=10.92,FB​=88.848>FBα​=9.78,拒绝H0A,H0BH_{0A},H_{0B}H0A​,H0B​,认为两个因素都有影响。

有交互作用的双因素方差分析

1.形式

假定要考察两个因素A,BA,BA,B对某项指标的影响,因素AAA取sss个水平A1,A2,…,AsA_{1}, A_{2}, \dots, A_{s}A1​,A2​,…,As​,因素BBB取rrr个水平B1,B2,…,BrB_{1}, B_{2}, \dots, B_{r}B1​,B2​,…,Br​,在A,BA,BA,B的每队组合水平(Ai,Bj)\left(A_{i}, B_{j}\right)(Ai​,Bj​)上尸检结果独立地服从N(μij,σ2)N\left(\mu_{i j}, \sigma^{2}\right)N(μij​,σ2)分布,如下表:

因素 B1B_1B1​ B2B_2B2​ BsB_sBs​
A1A_1A1​ X111,...,X11tX_{111},...,X_{11t}X111​,...,X11t​ X121,...,X12tX_{121},...,X_{12t}X121​,...,X12t​ X1s1,...,X1stX_{1s1},...,X_{1st}X1s1​,...,X1st​
A2A_2A2​ X211,...,X21tX_{211},...,X_{21t}X211​,...,X21t​ X221,...,X22tX_{221},...,X_{22t}X221​,...,X22t​ X2s1,...,X2stX_{2s1},...,X_{2st}X2s1​,...,X2st​
ArA_rAr​ Xr11,...,Xr1tX_{r11},...,X_{r1t}Xr11​,...,Xr1t​ Xr21,...,Xr2tX_{r21},...,X_{r2t}Xr21​,...,Xr2t​ Xrs1,...,XrstX_{rs1},...,X_{rst}Xrs1​,...,Xrst​

2.参数

为了方便研究,令:
μ=1rs∑i=1r∑j=1sμijμi.=1s∑j=1sμijαi=μi.−μi=1,2,…,rμ.j=1r∑i=1rμijβj=μ.j−μj=1,2,…,s\begin{aligned} &\mu=\frac{1}{r s} \sum_{i=1}^{r} \sum_{j=1}^{s} \mu_{i j}\\ &\mu_{i .}=\frac{1}{s} \sum_{j=1}^{s} \mu_{i j} \quad \alpha_{i}=\mu_{i .}-\mu \quad i=1,2, \ldots, r\\ &\mu_{. j}=\frac{1}{r} \sum_{i=1}^{r} \mu_{i j} \quad \beta_{j}=\mu_{. j}-\mu \quad j=1,2, \ldots, s \end{aligned}​μ=rs1​i=1∑r​j=1∑s​μij​μi.​=s1​j=1∑s​μij​αi​=μi.​−μi=1,2,…,rμ.j​=r1​i=1∑r​μij​βj​=μ.j​−μj=1,2,…,s​
称μ\muμ为一般平均值,αi\alpha_{i}αi​为因素AAA的第iii个水平的效应,有如下关系式:
∑i=1rαi=0∑j=1sβj=0\sum_{i=1}^{r} \alpha_{i}=0 \quad \sum_{j=1}^{s} \beta_{j}=0i=1∑r​αi​=0j=1∑s​βj​=0
若μij≠μ+αi+βj\mu_{i j} \neq \mu+\alpha_{i}+\beta_{j}μij​​=μ+αi​+βj​,则称γij=μij−μ−αi−βj\gamma_{i j}=\mu_{i j}-\mu-\alpha_{i}-\beta_{j}γij​=μij​−μ−αi​−βj​为因素AAA的第iii个水平与因素BBB的第jjj个水平的交互效应,它们满足关系式:
∑i=1rγij=0,j=1,2,…,s∑j=1sγij=0,i=1,2,…,r\begin{aligned} &\sum_{i=1}^{r} \gamma_{i j}=0, \quad j=1,2, \ldots, s\\ &\sum_{j=1}^{s} \gamma_{i j}=0, \quad i=1,2, \ldots, r \end{aligned}​i=1∑r​γij​=0,j=1,2,…,sj=1∑s​γij​=0,i=1,2,…,r​

3.模型与假设

  • 有交互的双因素方差分析模型
    Xijk=μ+αi+βj+γij+εijk∑i=1rαi=0,∑j=1sβj=0∑i=1rγij=0,∑j=1sγij=0εijk∼N(0,σ2),且相互独立i=1,2,…,r;j=1,2,…,s;k=1,2,…,t\begin{aligned} &X_{i j k}=\mu+\alpha_{i}+\beta_{j}+\gamma_{i j}+\varepsilon_{i j k}\\ &\sum_{i=1}^{r} \alpha_{i}=0, \quad \sum_{j=1}^{s} \beta_{j}=0\\ &\sum_{i=1}^{r} \gamma_{i j}=0, \quad \sum_{j=1}^{s} \gamma_{i j}=0\\ &\varepsilon_{i j k} \sim N\left(0, \sigma^{2}\right),且相互独立 \end{aligned}\\ i=1,2, \ldots, r ; \quad j=1,2, \ldots, s ; \quad k=1,2, \ldots, t ​Xijk​=μ+αi​+βj​+γij​+εijk​i=1∑r​αi​=0,j=1∑s​βj​=0i=1∑r​γij​=0,j=1∑s​γij​=0εijk​∼N(0,σ2),且相互独立​i=1,2,…,r;j=1,2,…,s;k=1,2,…,t
  • 需要检验的假设
    H01:α1=α2=…=αr=0H02:β1=β2=…=βs=0H03:γyˉ=0,∀i,j\begin{aligned} &H_{01}: \alpha_{1}=\alpha_{2}=\ldots=\alpha_{r}=0\\ &H_{02}: \beta_{1}=\beta_{2}=\ldots=\beta_{s}=0\\ &H_{03}: \gamma_{\bar{y}}=0, \quad \forall i, j \end{aligned}​H01​:α1​=α2​=…=αr​=0H02​:β1​=β2​=…=βs​=0H03​:γyˉ​​=0,∀i,j​

4.平方和分解

  • 记号引入
    X=1rst∑i=1r∑j=1s∑k=1tXijkXij⋅=∑k=1tXijk,Xˉij⋅=1tXij⋅,i=1,2,…,r;j=1,2,…,sXi⋅⋅=∑j=1s∑k=1tXijk,Xˉi⋅⋅=1stXi⋅⋅,i=1,2,…,rX⋅j⋅=∑j=1r∑k=1tXijk,Xˉ⋅j⋅=1rtXi⋅⋅,j=1,2,…,sX=\frac{1}{rst} \sum_{i=1}^{r} \sum_{j=1}^{s} \sum_{k=1}^{t} X_{i j k}\\ \begin{aligned} &X_{ij\cdot} =\sum_{k=1}^{t} X_{i j k}, \quad \bar{X}_{i j\cdot} =\frac{1}{t} X_{i j\cdot} , \quad i=1,2, \ldots, r ; \quad j=1,2, \ldots, s\\ &X_{i\cdot\cdot} =\sum_{j=1}^{s} \sum_{k=1}^{t} X_{i j k}, \quad \bar{X}_{i \cdot \cdot}=\frac{1}{s t} X_{i\cdot\cdot}, \quad i=1,2, \ldots, r\\ &X_{\cdot j\cdot}=\sum_{j=1}^{r} \sum_{k=1}^{t} X_{i j k}, \quad \bar{X}_{\cdot j\cdot}=\frac{1}{r t} X_{i\cdot\cdot}, \quad j=1,2, \ldots, s \end{aligned}X=rst1​i=1∑r​j=1∑s​k=1∑t​Xijk​​Xij⋅​=k=1∑t​Xijk​,Xˉij⋅​=t1​Xij⋅​,i=1,2,…,r;j=1,2,…,sXi⋅⋅​=j=1∑s​k=1∑t​Xijk​,Xˉi⋅⋅​=st1​Xi⋅⋅​,i=1,2,…,rX⋅j⋅​=j=1∑r​k=1∑t​Xijk​,Xˉ⋅j⋅​=rt1​Xi⋅⋅​,j=1,2,…,s​
    由此可得:
    Xˉ=μ+sˉXˉij⋅=μ+αi+βj+γij+εˉij⋅Xˉi⋅⋅=μ+αj+εˉi⋅⋅Xˉ⋅j⋅=μ+βj+εˉ⋅j⋅\begin{aligned} &\bar{X}=\mu+\bar{s}\\ &\bar{X}_{i j\cdot}=\mu+\alpha_{i}+\beta_{j}+\gamma_{i j}+\bar{\varepsilon}_{i j\cdot}\\ &\bar{X}_{i\cdot\cdot}=\mu+\alpha_{j}+\bar{\varepsilon}_{i\cdot\cdot}\\ &\bar{X}_{\cdot j \cdot}=\mu+\beta_{j}+\bar{\varepsilon}_{\cdot j\cdot} \end{aligned}​Xˉ=μ+sˉXˉij⋅​=μ+αi​+βj​+γij​+εˉij⋅​Xˉi⋅⋅​=μ+αj​+εˉi⋅⋅​Xˉ⋅j⋅​=μ+βj​+εˉ⋅j⋅​​
  • 平方和分解
    ST=∑i=1r∑j=1s∑k=1t(Xijk−Xˉ)2=SE+SA+SB+SA×B\begin{aligned} &S_{T}=\sum_{i=1}^{r} \sum_{j=1}^{s} \sum_{k=1}^{t}\left(X_{i j k}-\bar{X}\right)^{2}\\ &=S_{E}+S_{A}+S_{B}+S_{A \times B} \end{aligned}​ST​=i=1∑r​j=1∑s​k=1∑t​(Xijk​−Xˉ)2=SE​+SA​+SB​+SA×B​​
  • 误差平方和
    试验的随机波动引起的误差。
    SE=∑i=1r∑j=1s∑k=1t(Xijk−Xˉij⋅)2S_{E}=\sum_{i=1}^{r} \sum_{j=1}^{s} \sum_{k=1}^{t}\left(X_{i j k}-\bar{X}_{i j\cdot} \right)^{2}SE​=i=1∑r​j=1∑s​k=1∑t​(Xijk​−Xˉij⋅​)2
  • 因子AAA的偏差平方和
    除了反映了试验的随机波动引起的误差外,还反映了因子A的效应间的差异。
    SA=∑i=1rst(Xˉi⋅⋅−Xˉ)2S_{A}=\sum_{i=1}^{r} s t\left(\bar{X}_{i\cdot\cdot}-\bar{X}\right)^{2}SA​=i=1∑r​st(Xˉi⋅⋅​−Xˉ)2
  • 因子BBB的偏差平方和
    除了反映了试验的随机波动引起的误差外,还反映了因子B的效应间的差异。
    SB=∑j=1srt(Xˉ⋅j⋅−Xˉ)2S_{B}=\sum_{j=1}^{s} r t\left(\bar{X}_{\cdot j\cdot}-\bar{X}\right)^{2}SB​=j=1∑s​rt(Xˉ⋅j⋅​−Xˉ)2
  • 交互作用的偏差平方和
    除了反映了试验的随机波动引起的误差外,还反映了交互效应的差异所引起的波动。
    SA×B=∑i=1r∑j=1st(Xˉij⋅−Xˉi⋅⋅−Xˉ⋅j⋅+Xˉ)2S_{A \times B}=\sum_{i=1}^{r} \sum_{j=1}^{s} t\left(\bar{X}_{i j\cdot}-\bar{X}_{i \cdot \cdot}-\bar{X}_{\cdot j \cdot}+\bar{X}\right)^{2}SA×B​=i=1∑r​j=1∑s​t(Xˉij⋅​−Xˉi⋅⋅​−Xˉ⋅j⋅​+Xˉ)2
  • 计算公式
    ST=∑i=1r∑j=1s∑k=1tXijk2−nXˉ2fT=rst−1SA=1st∑i=1rXi..2−nXˉ2fA=r−1SB=1rt∑i=1rX.j.2−nXˉ2fB=s−1SA×B=1t∑i=1r∑j=1sXij.2−nXˉ2−SA−SBfA×B=(r−1)(s−1)SE=ST−SA−SB−SAXBfE=rs(t−1)\begin{aligned} &S_{T}=\sum_{i=1}^{r} \sum_{j=1}^{s} \sum_{k=1}^{t} X_{i j k}^{2}-n \bar{X}^{2} \quad f_{T}=r s t-1\\ &S_{A}=\frac{1}{s t} \sum_{i=1}^{r} X_{i . .}^{2}-n \bar{X}^{2} \quad \quad f_{A}=r-1\\ &S_{B}=\frac{1}{r t} \sum_{i=1}^{r} X_{. j .}^{2}-n \bar{X}^{2} \quad f_{B}=s-1\\ &S_{A \times B}=\frac{1}{t} \sum_{i=1}^{r} \sum_{j=1}^{s} X_{i j .}^{2}-n \bar{X}^{2}-S_{A}-S_{B} \quad f_{A \times B}=(r-1)(s-1)\\ &S_{E}=S_{T}-S_{A}-S_{B}-S_{A X B} \quad f_{E}=r s(t-1) \end{aligned}​ST​=i=1∑r​j=1∑s​k=1∑t​Xijk2​−nXˉ2fT​=rst−1SA​=st1​i=1∑r​Xi..2​−nXˉ2fA​=r−1SB​=rt1​i=1∑r​X.j.2​−nXˉ2fB​=s−1SA×B​=t1​i=1∑r​j=1∑s​Xij.2​−nXˉ2−SA​−SB​fA×B​=(r−1)(s−1)SE​=ST​−SA​−SB​−SAXB​fE​=rs(t−1)​

5.假设检验

  • 检验统计量
    当H01H_{01}H01​为真时:
    FA=SA/(r−1)SE/rs(t−1)∼F(r−1,rs(t−1))F_{A}=\frac{S_{A} /(r-1)}{S_{E} / r s(t-1)} \sim F(r-1, r s(t-1))FA​=SE​/rs(t−1)SA​/(r−1)​∼F(r−1,rs(t−1))
    当H02H_{02}H02​为真时:
    FB=SB/(s−1)SE/rs(t−1)∼F(s−1,rs(t−1))F_{B}=\frac{S_{B} /(s-1)}{S_{E} / r s(t-1)} \sim F(s-1, r s(t-1))FB​=SE​/rs(t−1)SB​/(s−1)​∼F(s−1,rs(t−1))
    当H03H_{03}H03​为真时:
    FA×B=SA×B/(r−1)(s−1)SE/rs(t−1)∼F((r−1)(s−1),rs(t−1))F_{A \times B}=\frac{S_{A \times B} /(r-1)(s-1)}{S_{E} / r s(t-1)} \sim F((r-1)(s-1), r s(t-1))FA×B​=SE​/rs(t−1)SA×B​/(r−1)(s−1)​∼F((r−1)(s−1),rs(t−1))
  • 假设的拒绝
    对给定的显著性水平α\alphaα:
    当FA>F1−α(r−1,rs(t−1))F_A>F_{1-\alpha}(r-1,rs(t-1))FA​>F1−α​(r−1,rs(t−1))时拒绝H01H_{01}H01​
    当FB>F1−α(s−1,rs(t−1))F_B>F_{1-\alpha}(s-1,rs(t-1))FB​>F1−α​(s−1,rs(t−1))时拒绝H02H_{02}H02​
    当FA×B>F1−α((r−1)(s−1),rs(t−1))F_{A\times B}>F_{1-\alpha}((r-1)(s-1),rs(t-1))FA×B​>F1−α​((r−1)(s−1),rs(t−1))时拒绝H03H_{03}H03​
  • 方差分析表
来源 平方和 自由度 均方和 FFF值 显著性
因子AAA SAS_ASA​ r−1r-1r−1 SA/(r−1)S_A/(r-1)SA​/(r−1) FAF_AFA​
因子BBB SBS_BSB​ s−1s-1s−1 SB/(s−1)S_B/(s-1)SB​/(s−1) FBF_BFB​
A×BA\times BA×B SA×BS_{A\times B}SA×B​ (r−1)(s−1)(r-1)(s-1)(r−1)(s−1) SA×B(r−1)(s−1)\frac{S_{A\times B}}{(r-1)(s-1)}(r−1)(s−1)SA×B​​ FA×BF_{A \times B}FA×B​
误差 SES_ESE​ rs(t−1)rs(t-1)rs(t−1) SE/rs(t−1)S_E/rs(t-1)SE​/rs(t−1)
总和 STS_TST​ rst−1rst-1rst−1

一般,当F>F0.99F>F_{0.99}F>F0.99​时,称因子的影响高度显著,记为“**”;当F0.99>F≥F0.95F_{0.99}>F≥F_{0.95}F0.99​>F≥F0.95​时,称因子的影响显著,记为“*”;当F<F0.95F<F_{0.95}F<F0.95​时, 称因子无显著影响,即认为因子各水平间无差异。

6.实现

  • 例题
    在某化工生产中为了提高收率,选了三种不同浓度AAA,四种不同温度BBB做试验。在同一浓度与同一温度组合下各做二次试验,其收率数据如下而计算表所列(数据均已减去75)。试检验不同浓度,不同温度以及它们间的交互作用对收率有无显著影响。
因素 B1B_1B1​ B2B_2B2​ B3B_3B3​ B4B_4B4​ Xi⋅⋅X_{i\cdot \cdot}Xi⋅⋅​ Xi⋅⋅2X^2_{i\cdot \cdot}Xi⋅⋅2​
A1A_1A1​ 14,10 11,11 13,9 10,12 90 8100
A2A_2A2​ 9,7 10,8 7,11 6,10 68 4624
A3A_3A3​ 5,11 13,14 12,13 14,10 92 8464
X⋅j⋅X_{\cdot j\cdot}X⋅j⋅​ 56 67 65 62 250 21188
X⋅j⋅2X^2_{\cdot j\cdot}X⋅j⋅2​ 3136 4489 4225 3844 15694
  • C++求解
#include<bits/stdc++.h>
using namespace std;int main()
{int r = 3, s = 4, t = 2;double x[10][10][10]= {{{14,10},{11,11},{13, 9},{10,12}}, //data{{ 9, 7},{10, 8},{ 7,11},{ 6,10}},{{ 5,11},{13,14},{12,13},{14,10}}};double n_sq_x_bar = 0;double sq_x = 0;double x_ijdot = 0;double tmp = 0, tmp1 = 0, tmp2 = 0;double x_dot_j_dot[10];memset(x_dot_j_dot, 0, sizeof(x_dot_j_dot));double x_i_dot_dot[10];memset(x_i_dot_dot, 0, sizeof(x_i_dot_dot));for(int i = 0; i < r; ++i){for(int j = 0; j < s; ++j){for(int k = 0; k < t; ++k){x_dot_j_dot[j] += x[i][j][k];x_i_dot_dot[i] += x[i][j][k];tmp += x[i][j][k];n_sq_x_bar += x[i][j][k];sq_x += x[i][j][k] * x[i][j][k];}x_ijdot += tmp * tmp;tmp = 0;}}double sum_x_dot_j_dot = 0;for(int i = 0; i < s; ++i){sum_x_dot_j_dot += x_dot_j_dot[i] * x_dot_j_dot[i];}double sum_x_i_dot_dot = 0;for(int i = 0; i < r; ++i){sum_x_i_dot_dot += x_i_dot_dot[i] * x_i_dot_dot[i];}// cout << sum_x_dot_j_dot << " " << sum_x_i_dot_dot << endl;n_sq_x_bar /= 24;n_sq_x_bar *= n_sq_x_bar;n_sq_x_bar *= 24;// cout << n_sq_x_bar << " " << sq_x << " " << x_ijdot << endl;double S_T = sq_x - n_sq_x_bar;double S_A = sum_x_i_dot_dot / (s * t) - n_sq_x_bar;double S_B = sum_x_dot_j_dot / (r * t) - n_sq_x_bar;double S_AB = (1.0 / t) * x_ijdot - n_sq_x_bar - S_A - S_B;double S_E = S_T - S_A - S_B - S_AB;// cout << S_T << " " << S_A << " " << S_B << " " << S_AB << endl;double F_A = (S_A / (r - 1)) / (S_E / (r * s * (t - 1)));double F_B = (S_B / (s - 1)) / (S_E / (r * s * (t - 1)));double F_AB = (S_AB / ((r - 1) * (s - 1))) / (S_E / (r * s * (t - 1)));// cout << "F_A = " << F_A << "\nF_B = " << F_B << "\nF_AB = " << F_AB << endl;cout << "source\tdf\tSS\tMS\t\F" << endl;cout << "A\t" << r - 1 << "\t" << S_A << "\t" << S_A/(r - 1) << "\t" << F_A << endl;cout << "B\t" << s - 1 << "\t" << S_B << "\t" << S_B/(s - 1) << "\t" << F_B << endl;cout << "AXB\t" << (r - 1) * (s - 1) << "\t" << S_AB << "\t" << S_AB / ((r - 1) * (s - 1)) << "\t" << F_AB << endl;cout << "error\t" << r * s * (t - 1) << "\t" << S_E << "\t" << S_E/(r * s * (t - 1)) << endl;cout << "total\t" << r * s * t - 1 << "\t" << S_T << endl;return 0;
}

运行结果:

  • MATLAB求解
function annova_solve()x = [14, 11, 13, 10;10, 11, 9, 12;9, 10, 7, 6;7, 8, 11, 10;5, 13, 12, 14;11, 14, 13, 10];p = anova2(x,2);
end

运行结果:

  • Excel求解
    录入数据如下:

在“数据分析”中选择“可重复双因素分析”,选择区域,单击“确定”:

结果如下:

  • 结论
    查表可知,F0.05<FA<F0.01F_{0.05}<F_{A}<F_{0.01}F0.05​<FA​<F0.01​,FB,FA×B<F0.05F_{B},F_{A\times B}<F_{0.05}FB​,FA×B​<F0.05​。故认为浓度影响较为显著,温度与交互作用影响不显著。

查看原文(我的博客)

【数据分析】双因素方差分析相关推荐

  1. Python玩转数据分析——双因素方差分析

    概念 方差分析(Analysis of Variance,简称ANOVA),又称"变异数分析"或"F检验",用于两个及两个以上样本均数差别的显著性检验.双因素方 ...

  2. R语言使用aov函数进行双因素方差分析(Two-way factorial ANOVA)、使用HH包中的interaction2wt函数为任何阶的双因素方差分析可视化主效应和交互作用图、箱图显示主效应

    R语言使用aov函数进行双因素方差分析(Two-way factorial ANOVA).使用HH包中的interaction2wt函数为任何阶的双因素方差分析可视化主效应和交互作用图(Main ef ...

  3. R语言使用aov函数进行双因素方差分析(Two-way factorial ANOVA)、在双因素方差分析中,受试者被分配到由两个因素交叉分类形成的组(Two-way factorial ANOVA)

    R语言使用aov函数进行双因素方差分析(Two-way factorial ANOVA).在双因素方差分析中,受试者被分配到由两个因素交叉分类形成的组(Two-way factorial ANOVA) ...

  4. R语言使用aov函数进行双因素方差分析(Two-way factorial ANOVA)、使用interaction.plot函数在双因素方差分析中可视化交互作用(Interaction)

    R语言使用aov函数进行双因素方差分析(Two-way factorial ANOVA).使用interaction.plot函数在双因素方差分析中显示(可视化)交互作用(Interaction) 目 ...

  5. R语言双因素方差分析

    R语言双因素方差分析 条件: 各个样本是相互独立的随机: 各个样本来自正态总体: 具有方差齐性: 用途: 检验两个或多样本均数间的差异有无统计学意义:注:本均数的比较可以采用 t检验或 F检验,两个以 ...

  6. 双因素方差分析_多因素方差分析

    总第173篇/张俊红 01.前言 在前面我们讲过简单的单因素方差分析,这一篇我们讲讲双因素方差分析以及多因素方差分析,双因素方差分析是最简单的多因素方差分析. 单因素分析就是只考虑一个因素会对要比较的 ...

  7. 第13章重复测量和双因素方差分析

    第1章统计学入门 第2章频数分布略 第3章集中趋势的测量 第4章变异性 第5章分数的位置及标准化分布 第6章概率和正态分布 第7章概率和样本:样本均值的分布 第8章假设检验介绍 第9章t检验介绍 第1 ...

  8. R语言统计篇:双因素方差分析

    今天介绍双因素方差分析(Two-way ANOVA). 此方法用于检验两个分类变量(自变量)与一个连续变量(因变量)之间的关系. 比方说,如果一个分类变量有两个组别,另外一个分类变量有三个组别,那么一 ...

  9. 双因素方差分析全流程汇总

    方差分析就是通过检验各总体的均值是否相等来判断分类型自变量(定类变量)对数据型因变量(定量变量)是否有显著影响.方差分析一般分为单因素方差分析.双因素方差分析.三因素方差分析以及多因素方差分析.如下说 ...

最新文章

  1. 判定两棵二叉树是否相似以及左右子树交换、层次编号
  2. LinkedHashMap
  3. C#正则表达式MatchCollection类浅析
  4. 使用Spring AOP中MethodInterceptor记录日志
  5. AT2370-[AGC013D]Piling Up【dp】
  6. Mybatis主线流程源码解析
  7. 构建高性能ASP.NET站点 第六章—性能瓶颈诊断与初步调优(下前篇)—简单的优化...
  8. mysql-安装包模式的安装过程-旧版
  9. time_t 和 struct tm 及时间戳的正确用法
  10. Cent OS 6/7 中通过yum安装软件时提示cannot find a valid baseurl...的解决方法
  11. MySQL反斜杠 ‘\\‘ 插入数据库丢失
  12. 学计算机的学后感,计算机学习心得体会(通用10篇)
  13. 简单步骤Centos7安装Tomcat 8 (yum安装)(ZT)
  14. 深入浅出Go Runtime
  15. 华硕主板怎么刷bios
  16. Axure 9 简介【原型工具】
  17. 题解 - 只能吃土豆的牛牛(C++)
  18. 如何在单片机中用汇编优雅的点灯
  19. BootStrap 图标修改
  20. 互联网寒冬?软件测试行业饱和了?为何每年还会增加40万测试员?

热门文章

  1. 极客日报:阿里再度调整组织架构:天猫淘宝大融合,新设三大中心;苹果M1首席芯片设计师跳槽至英特尔
  2. Android 推送消息开放接口 OpenPush
  3. 椭圆型偏微分方程和格林函数
  4. 单调栈(C/C++)
  5. 145页6万字政务大数据交换共享平台建设方案
  6. theano及cuda环境搭建
  7. 使用js格式化json
  8. logrotate实现日志切割和清理(清晰易懂)
  9. 数据结构系列笔记——图
  10. 简单脱壳教程笔记(2)---手脱UPX壳(1)