1. 程式人生 > >MATLAB R2018a 統計和機器學習工具箱學習(一) 描述性統計與視覺化

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