多语言展示
当前在线:1128今日阅读:165今日分享:48

MATLAB对多变量数据进行min-max归一化

“MATLAB对多变量数据进行min-max归一化”属于数据归一化中的其中一种方法,采用min-max法对数据进行最大最小归一化的步骤如下。
工具/原料
1

电脑

2

MATLAB

3

需归一化的样本数据Excel,空白归一化处理后数据Excel表格

方法/步骤
1

首先读入样本数据。程序如下:cz_wt=xlsread('样本数据.xlsx');  正常读入后的结果可在工作区查看矩阵cz_wt是否有了数据,正常结果如下图所示。

2

然后计算每列的最大值。程序代码如下:mx_czwt=max(cz_wt);  运行结果如下图。

3

接着计算每列的最小值。程序代码如下:mn_czwt=min(cz_wt); 运行结果如下。

4

再张成与old一样大小,主要对行进行复制,列不用变 。代码:m=size(cz_wt,1);  maxnew=repmat(mx_czwt,m,1);  minnew=repmat(mn_czwt,m,1);运行结果。

5

接下来将归一化的数据赋值给gy_data。程序:gy_data=(cz_wt-minnew)./(maxnew-minnew);运算结果。

6

然后将归一化的数据gy_data赋值给归一化的数据表格。代码为:xlswrite('归一化处理后数据.xlsx',gy_data); 运行后,查看归一化的数据表格中是否已经有了归一化的数据。正常情况应看到如下表格。

7

完整程序及截图如下:%*********数据归一化,采用min-max法对数据进行最大最小归一化。*******cz_wt=xlsread('样本数据.xlsx');  %读入样本数据mx_czwt=max(cz_wt);      %计算每列的最大值mn_czwt=min(cz_wt);      %计算每列的最小值%张成与old一样大小,主要对行进行复制,列不用变  m=size(cz_wt,1);  maxnew=repmat(mx_czwt,m,1);  minnew=repmat(mn_czwt,m,1);  gy_data=(cz_wt-minnew)./(maxnew-minnew);   % 将归一化的数据赋值给gy_dataxlswrite('归一化处理后数据.xlsx',gy_data);  % 将归一化的数据gy_data赋值给归一化的数据表格%*************************************************************************

注意事项
1

样本数据表格应放在程序路径下,且程序路径不能用中文。

2

应先建立一个空白“归一化处理后数据”Excel表格放入程序路径,程序才能往表格里面填数据。

推荐信息