このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
categorical データのプロット
この例では、categorical
配列のデータをプロットする方法を示します。
サンプル データの読み込み
100 名の患者から収集されたサンプル データを読み込みます。patients
MAT ファイルからの配列のデータ型とサイズを表示します。
load patients
whos
Name Size Bytes Class Attributes Age 100x1 800 double Diastolic 100x1 800 double Gender 100x1 11412 cell Height 100x1 800 double LastName 100x1 11616 cell Location 100x1 14208 cell SelfAssessedHealthStatus 100x1 11540 cell Smoker 100x1 100 logical Systolic 100x1 800 double Weight 100x1 800 double
categorical 配列の作成
ワークスペース変数 Location
は、患者を調査した 3 つの一意の医療施設をリストします。
より簡単にデータのアクセスと比較を行えるようにするため、Location
を categorical
配列に変換します。
Location = categorical(Location);
categorical
配列を集計します。集計結果には、各カテゴリが Location
に現れる回数が示されます。
summary(Location)
County General Hospital 39 St. Mary's Medical Center 24 VA Hospital 37
調査された患者は、County General Hospital では 39 名、St. Mary’s Medical Center では 24 名、VA Hospital では 37 名です。
ワークスペース変数 SelfAssessedHealthStatus
には、4 つの一意な値 Excellent
、Fair
、Good
および Poor
が含まれています。
カテゴリに数学的な順序 Poor < Fair < Good < Excellent
が付くように、SelfAssessedHealthStatus
を順序 categorical
配列に変換します。
SelfAssessedHealthStatus = categorical(SelfAssessedHealthStatus,... ["Poor","Fair","Good","Excellent"],"Ordinal",true);
categorical
配列 SelfAssessedHealthStatus
を集計します。
summary(SelfAssessedHealthStatus)
Poor 11 Fair 15 Good 40 Excellent 34
ヒストグラムのプロット
ヒストグラムの棒グラフを SelfAssessedHealthStatus
から直接作成します。この categorical
配列は、順序 categorical
配列です。カテゴリに付けられた順序 Poor
< Fair
< Good
< Excellent
によって、プロットの "x" 軸上のカテゴリの順序が決まります。関数 histogram
は、4 つのカテゴリそれぞれのカテゴリ カウントをプロットします。
figure
histogram(SelfAssessedHealthStatus)
title("Self Assessed Health Status From 100 Patients")
健康状態が Fair
または Poor
と診断された患者のみを対象として医療施設のヒストグラムを作成します。
figure histogram(Location(SelfAssessedHealthStatus <= "Fair")) title("Location of Patients in Fair or Poor Health")
円グラフの作成
categorical
配列から直接、円グラフを作成します。
figure
pie(SelfAssessedHealthStatus);
title("Self Assessed Health Status From 100 Patients")
関数 pie
は、categorical
配列 SelfAssessedHealthStatus
を受け入れて、4 つのカテゴリの円グラフをプロットします。
パレート図の作成
SelfAssessedHealthStatus
の 4 つの各カテゴリのカテゴリ カウントからパレート図を作成します。
figure
A = countcats(SelfAssessedHealthStatus);
C = categories(SelfAssessedHealthStatus);
pareto(A,C);
title("Self Assessed Health Status From 100 Patients")
pareto
の最初の入力引数はベクトルでなければなりません。categorical
配列が行列または多次元配列の場合は、countcats
および pareto
を呼び出す前に形状をベクトルに変更します。
散布図の作成
自己申告の健康状態が血圧測定値に関連するかどうかを判断します。2 つの患者グループについて Diastolic
および Systolic
の測定値の散布図を作成します。
最初に、2 つの患者グループについて血圧測定値の "x" 配列と "y" 配列を作成します。最初の患者グループは、各自の健康状態を Poor
または Fair
と申告している患者で構成されます。2 番目の患者グループは、各自の健康状態を Good
または Excellent
と申告している患者で構成されます。
categorical
配列 SelfAssessedHealthStatus
を使用して、logical インデックスを作成できます。logical インデックスを使用して、Diastolic
および Systolic
からそれぞれ別の配列に値を抽出します。
X1 = Diastolic(SelfAssessedHealthStatus <= "Fair"); Y1 = Systolic(SelfAssessedHealthStatus <= "Fair"); X2 = Diastolic(SelfAssessedHealthStatus >= "Good"); Y2 = Systolic(SelfAssessedHealthStatus >= "Good");
X1
および Y1
は、健康状態が Poor
または Fair
の患者のデータを含む 26 行 1 列の数値配列です。
X2
および Y2
は、健康状態が Good
または Excellent
の患者のデータを含む 74 行 1 列の数値配列です。
2 つの患者グループの血圧測定値の散布図を作成します。プロットには、2 つのグループの示唆的な違いが表れていません。このことはおそらく、これらの患者によって申告された健康状態に血圧が影響しないことを示しています。
figure h1 = scatter(X1,Y1,"o"); hold on h2 = scatter(X2,Y2,"x"); title("Blood Pressure for Groups of Patients Assessing Self Health"); xlabel("Diastolic (mm Hg)") ylabel("Systolic (mm Hg)") legend("Poor or Fair","Good or Excellent")
参考
categorical
| summary
| countcats
| histogram
| pie
| bar
| rose
| scatter