技術共有

Matlab 分散分析

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

生産工程を安定させ、高品質、高歩留まりを実現するには、そのメカニズムを解明するだけでなく、製品の品質に影響を与える要因を分析し、影響を与える要因を明らかにすることが必要となる場合があります。多くの実験を行い、結果を分析して比較し、パターンを探します。数理統計を使用してテスト結果を分析し、結果に対する各要因の影響の程度を特定する方法は分散分析と呼ばれ、ANOVA として記録されます。

テスト結果を指標といい、テストで調査する必要があり制御できる条件を要因または要因、要因の状態を水準といいます。因子の数に応じて、単一因子分散分析と二因子分散分析に分類できます。

目次

1. 一元配置分散分析

1.1 数学モデル

1.2 統計分析

1.3 分散分析表

1.4 MATLAB の実装

(1) バランスデータ

(2) 不平衡データ

1.5 多重比較

2. 二因子分散分析

2.1 数学モデル

2.2 交互作用効果を考慮しない二因子分散分析

編集 2.3 交互作用効果に関する二元配置分散分析

2.4 MATLAB の実装


1. 一元配置分散分析

関心のある指数に対する 1 つの因子 A の影響のみを考慮し、A の複数のレベルを取得し、各レベルで複数の実験を実行します。実験中、A 以外の指数に影響を与える他の因子は変化しません (ランダムな因子のみが存在します)。タスクは、実験結果から、因子 A が指数に有意な影響を与えるかどうか、つまり、A が異なるレベルを取るときに指数に有意な差があるかどうかを推測することです。 A が特定のレベルの指標を確率変数として取得し、A が異なるレベルを取ったときに指標に有意な差があるかどうかを判断することは、複数の母集団の平均が等しいかどうかをテストすることと同じです。

1.1 数学モデル

1.2 統計分析

カイ二乗分布の加法性から次のようになります。

1.3 分散分析表

分散分析で一般に使用される有意水準は次のとおりです。α = 0.01、因子 A (または A の各レベルの差) の影響が非常に大きいとして H0 を拒否します。α = 0.01、H0 を拒否するのではなく、α = 0.05 、H0 を拒否し、因子 A の影響が大きいと主張します。α = 0.05 , H0 は棄却されず、因子 A は大きな影響を及ぼさないと言われています。

1.4 MATLAB の実装

Matlab 統計ツールボックスの一元配置分散分析のコマンドは次のとおりです。 アノバル 。 各グループ内のデータの数が等しい場合、それはバランスの取れたデータと呼ばれます。各グループ内のデータの数が等しくない場合、それを不均衡データと呼びます。

(1) バランスデータ

バランスのとれたデータを処理するための使用法は次のとおりです。 p=anoval(x)

戻り値 pは確率です。 p > αいつ受け入れますか H0 , x は m×r のデータ行列で、x の各列はデータのレベルです (各レベルのサンプル容量は ni = m)。さらに、分散表と箱ひげ図が出力されます。

例:

  1. x=[256 254 250 248 236
  2. 242 330 277 280 252
  3. 280 290 230 305 220
  4. 298 295 302 289 252];
  5. p=anova1(x)

p = 0.1109 >α = 0.05 であることがわかり、帰無仮説は棄却できず、H0 が受け入れられます。つまり、5 人の作業者の生産性に有意な差はありません。

分散テーブルは、上記の 1 因子分散分析テーブルの列 1 ~ 4 に対応します。F = 2.262 は、F(4,15) 分布の 1- p 分位数であることが確認できます。 15)=0.8891=1 -p.

箱ひげ図は、5 人の労働者の生産性データの特性を反映しています。

(2) 不平衡データ

不均衡なデータを処理するための使用法は次のとおりです。 p=anova1(x,グループ)

x はベクトルで、1 番目のグループから r 番目のグループまでのデータが順番に配置されます。グループは x と同じ長さのベクトルで、x 内のデータのグループを示します。

例:

  1. clc,clear;
  2. x=[1620 1580 1460 1500
  3. 1670 1600 1540 1550
  4. 1700 1640 1620 1610
  5. 1750 1720 1680 1800];
  6. x=[x(1:4),x(16),x(5:8),x(9:11),x(12:15)];
  7. g=[ones(1,5),2*ones(1,4),3*ones(1,3),4*ones(1,4)];
  8. p=anova1(x,g)

得られた結果: p=0.0331<0.05 したがって、いくつかのプロセスで製造された電球の寿命には大きな違いがあります。

 

1.5 多重比較

電球の寿命の問題では、どのプロセスで電球の寿命に大きな差があるかを判断するために、まず各データセットの平均を計算します。

A1 の平均値は最大ですが、他の値と大きく異なるかどうかを判断するには複数の比較が必要です。一般に、多重比較では、すべての r 母集団間の差異を分析するために、それらをペアごとに比較する必要があります。問題の特定の状況に応じて、比較の数を減らすことができます。

  1. clc,clear;
  2. x=[1620 1580 1460 1500
  3. 1670 1600 1540 1550
  4. 1700 1640 1620 1610
  5. 1750 1720 1680 1800];
  6. x=[x(1:4),x(16),x(5:8),x(9:11),x(12:15)];
  7. g=[ones(1,5),2*ones(1,4),3*ones(1,3),4*ones(1,4)];
  8. [p,t,st]=anova1(x,g)
  9. [c,m,h,nms] = multcompare(st);
  10. [nms num2cell(m)]

2. 二因子分散分析

2 つの要素 A と B が指数に与える影響を考慮したい場合は、A と B をいくつかのレベルに分割し、レベルの組み合わせごとに複数の検定を実行し、得られたデータに対して分散分析を実行して、2 つの要素に有意な影響があるかどうかを検定します。または、2 つの要素が指標に重大な相互影響を与えるかどうかをさらにテストする必要があります。

2.1 数学モデル

2.2 交互作用効果を考慮しない二因子分散分析

経験または何らかの分析に基づいて 2 つの要素間に相互作用がないと事前に判断できる場合は、各セットの実験を繰り返す必要はありません。

t = 1 の場合、プロセスは大幅に簡素化されます。

 

交互作用効果を含まない 2 因子 ANOVA 表:

2.3 交互作用効果の二因子分散分析

交互作用効果に関する 2 因子 ANOVA 表:

2.4 MATLAB の実装

統計ツールボックスの anova2 を使用して、二因子分散分析を実行します。

コマンドは次のとおりです。p=anova2(x,繰り返し)

このうち、x の異なる列のデータは 1 つの因子の変化を表し、異なる行のデータは別の因子の変化を表します。各行と列のペア (「ユニット」) に複数の観測値がある場合、パラメータ reps は、各「ユニット」の複数の観測値の異なるラベルを示すために使用されます。つまり、reps は数値を与えます。繰り返された実験 t.

  1. x=[58.2 56.2 65.3
  2. 49.1 54.1 51.6
  3. 60.1 70.9 39.2
  4. 75.8 58.2 48.7];
  5. [p,t,st]=anova2(x)

得られた p=0.4491 0.7387 は、さまざまな燃料とさまざまなスラスタ間の違いがロケットの射程に大きな影響を与えないことを示しています。

  1. clc,clear
  2. x0=[58.2,52.6 56.2,41.2 65.3,60.8
  3. 49.1,42.8 54.1,50.5 51.6,48.4
  4. 60.1,58.3 70.9,73.2 39.2,40.7
  5. 75.8,71.5 58.2,51.0 48.7,41.4];
  6. x1=x0(:,1:2:5);x2=x0(:,2:2:6);
  7. for i=1:4
  8. x(2*i-1,:)=x1(i,:);
  9. x(2*i,:)=x2(i,:);
  10. end
  11. [p,t,st]=anova2(x,2)

p=0.0035 0.026 0.0001 であり、すべて 0.05 未満であることがわかり、平均が等しいという仮説は棄却できます。つまり、異なる燃料 (要因 A) と異なるスラスタ (要因 B) の範囲には大きな違いがあり、相互作用も重要です。