MATLAB R2018a 統計和機器學習工具箱學習(一) 描述性統計與視覺化
MATLAB R2018a 統計和機器學習工具箱學習(一) 描述性統計與視覺化
該內容被分為三個部分:
一、資料管理(Managing Data);
二、描述性統計(Descriptive Statistics);
三、統計視覺化(Statistical Visualization);
1、資料管理(Managing Data):
可以匯入和匯出多種檔案格式,筆者目前用的主要是Microsoft Excel spreadsheets,其他的如果將來有需要的話再進行學習和補充.
(1)xlsread %讀取Excel表中的資料
[num,text,raw] = xlsread('filename','sheet');
[num,text,raw] = xlsread('filename','sheet','xlRange');
num %返回為數值矩陣
text %元胞陣列,返回文字資料
raw %元胞陣列,返回工作表的數值資料和文字資料
filename %讀取指定檔案
sheet %讀取該檔案的指定工作表
xlRange %%讀取指定工作表的範圍,使用Excel範圍的語法
這裡要注意,MATLAB中一般顯示出四位小數,如果想要顯示出精度的話,可以使用 format long;
考慮到有時候要將資料寫入到Excel中,這裡也做一個總結,可以拿來複習。
status = xlswrite('filename',A,'sheet','xlRange') %這裡的file要是已存在的
status %用0和1返回操作的狀態
A %要寫入的資料
2、描述性統計(Descriptive Statistics):
從樣本資料中計算描述性統計, 包括集中趨勢(central tendency),分散程度(dispersion), 形狀(shape),相關性(correlation)和協方差(covariance).
A、集中趨勢和分散程度(Central Tendency and Dispersion)
(1) geomean(x) %計算x的幾何平均數(geometric mean)
若x為矩陣,則返回為行向量(row),為每一列(column)的幾何平均數
(2) y = harmmean(x) %計算x的調和平均數(harmonic mean),用法類似geomean
(3) y = nanmean(x) %忽略了NaN值的平均值,用法類似geomean
(4) y = nanmedian(x) %忽略了NaN值的中位數,用法類似geomean
(5) k = kurtosis(x) %求樣本的峰度,用法類似geomean 峰度,即樣本的四階中心矩除以方差的平方
(6) m = moment(X,k) %求X的k階中心矩(Central moment)
(7) y = skewness(X) %計算X的偏度(skewness)
(8) y = nanstd(X) %忽略了NaN值的標準差(Standard deviation)
(9) y = nanvar(X) %忽略了NaN值的方差(Variance)
幾何平均數的計算:
調和平均數的計算:
峰度的計算:
k階中心矩的計算:
偏度的計算:
B、範圍,百分位數和z分位數(Ranges, Percentiles, and z-Scores)
(1) y = range(X) %返回X中最大值與最小值的差值,若x為矩陣,則返回為行向量(row),為每一列(column)的range