tabulate
度数分布表
説明
例
データ ベクトルの集計
データのベクトルの度数分布表を作成します。
patients
データ セットを読み込みます。変数 Gender
の最初の 5 エントリを表示します。それぞれの値は患者の性別を示します。
load patients
Gender(1:5)
ans = 5x1 cell
{'Male' }
{'Male' }
{'Female'}
{'Female'}
{'Female'}
データ セットの Male
患者と Female
患者の数と割合を表示する度数分布表を生成します。
tabulate(Gender)
Value Count Percent Male 47 47.00% Female 53 53.00%
正の整数ベクトルの集計
正の整数のベクトルの度数分布表を作成します。既定では、ベクトル x
に正の整数のみが含まれている場合、tabulate
は、1
と max(x)
の間の、x
に出現しない整数について 0 カウントを返します。この動作を回避するには、tabulate
を呼び出す前に、ベクトル x
を categorical
ベクトルに変換します。
patients
データ セットを読み込みます。変数 Height
の最初の 5 エントリを表示します。それぞれの値は、患者の身長をインチで示しています。
load patients
Height(1:5)
ans = 5×1
71
69
64
67
64
データ セット内の特定の身長をもつ患者の数と割合を 2 列目と 3 列目に表示する度数分布表を生成します。tabulate
が返す行列の最初の 5 エントリと最後の 5 エントリを表示します。tbl
には 1
インチと 72
インチの間の各身長が各行に含まれており、72
は Height
内の最大の身長の値です。
tbl = tabulate(Height); first = tbl(1:5,:)
first = 5×3
1 0 0
2 0 0
3 0 0
4 0 0
5 0 0
last = tbl(end-4:end,:)
last = 5×3
68 15 15
69 8 8
70 11 11
71 10 10
72 4 4
Height
変数に出現する身長のみの Count
と Percent
の値を表示する度数分布表を生成します。Height
を categorical
変数に変換し、関数 tabulate
を呼び出します。
newHeight = categorical(Height); tabulate(newHeight)
Value Count Percent 60 1 1.00% 62 3 3.00% 63 7 7.00% 64 12 12.00% 65 8 8.00% 66 15 15.00% 67 6 6.00% 68 15 15.00% 69 8 8.00% 70 11 11.00% 71 10 10.00% 72 4 4.00%
集計されたデータからの table 配列の作成
tabulate
を使用して文字配列から度数分布表を作成します。結果の cell 配列を table
配列に変換し、結果を可視化します。
carsmall
データ セットを読み込みます。変数 Origin
内のデータを集計します。これにより、データ セット内の自動車の生産国が表示されます。結果の cell 配列 tbl
を table
配列 t
に変換します。Value
列を categorical
ベクトルに変更します。
load carsmall tbl = tabulate(Origin); t = cell2table(tbl,'VariableNames', ... {'Value','Count','Percent'}); t.Value = categorical(t.Value)
t=6×3 table
Value Count Percent
_______ _____ _______
USA 69 69
France 4 4
Japan 15 15
Germany 9 9
Sweden 2 2
Italy 1 1
度数分布表から棒グラフを作成します。
bar(t.Value,t.Count) xlabel('Country of Origin') ylabel('Number of Cars')
欠損値のあるデータの集計
NaN
値をもつ数値ベクトルから度数分布表を作成します。
carsmall
データ セットを読み込みます。変数 MPG
には、100 台の自動車で測定したガロンあたりの走行マイル数が格納されています。自動車 6 台については、MPG
値が欠損しています (NaN
です)。
load carsmall
numcars = length(MPG)
numcars = 100
nanindex = isnan(MPG); numMissingMPG = length(MPG(nanindex))
numMissingMPG = 6
MPG
を使用して度数分布表を作成します。tabulate
からの行列出力を table に変換し、table の列にラベルを付けます。
tbl = tabulate(MPG); t = array2table(tbl,'VariableNames', ... {'Value','Count','Percent'})
t=37×3 table
Value Count Percent
_____ _____ _______
9 1 1.0638
10 2 2.1277
11 1 1.0638
13 4 4.2553
14 5 5.3191
14.5 1 1.0638
15 5 5.3191
15.5 1 1.0638
16 2 2.1277
16.5 2 2.1277
17 1 1.0638
17.5 2 2.1277
18 4 4.2553
18.5 1 1.0638
19 2 2.1277
20 2 2.1277
⋮
度数分布表には数値の MPG
の値をもつ 94 台の自動車についてのデータのみが表示されます。tabulate
は、全 100 台の集合ではなく、自動車のこのサブセットの各 MPG
値の割合を計算します。
tnumcars = sum(t.Count)
tnumcars = 94
入力引数
x
— 入力データ
数値ベクトル | logical ベクトル | categorical ベクトル | 文字配列 | string 配列 | 文字ベクトルの cell 配列
入力データ。数値ベクトル、logical ベクトル、categorical ベクトル、文字配列、string 配列、または文字ベクトルの cell 配列を指定します。
x
が数値ベクトルの場合、tbl
は数値行列です。x
が logical ベクトル、categorical ベクトル、文字配列、string 配列、または文字ベクトルの cell 配列の場合、tbl
は cell 配列です。
メモ
x
の要素が正の整数の場合、度数分布表には、1
から max(x)
までの整数の中で x
に現れないものについては 0
というカウントが含まれます。たとえば、正の整数ベクトルの集計を参照してください。
データ型: single
| double
| logical
| categorical
| char
| string
| cell
出力引数
拡張機能
tall 配列
メモリの許容量を超えるような多数の行を含む配列を計算します。
この関数は、tall 配列を完全にサポートします。詳細は、tall 配列を参照してください。
スレッドベースの環境
MATLAB® の backgroundPool
を使用してバックグラウンドでコードを実行するか、Parallel Computing Toolbox™ の ThreadPool
を使用してコードを高速化します。
この関数は、スレッドベースの環境を完全にサポートします。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
バージョン履歴
R2006a より前に導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)