matlab學習 1 基本操作

2021-10-13 03:02:02 字數 1787 閱讀 7956

matlab**:標準化

% min-max標準化(min=0,max=1)

normalized_data = mapminmax(source_data', 0, 1)';

normalized_data = normalized_data';

% z-score標準化

normalized_data = zscore(source_data);

function [normalized_data] = normalize(source_data, kind)

% 資料的標準化(歸一化)處理

% 引數 source_data 可用格式的源資料

% 引數 kind 代表何種歸一化, 預設為1. 1代表min-max標準化,2代表z-score標準化.

% 返回歸一化後的資料

if nargin < 2 % 如果引數少於2個,預設進行min-max標準化

kind = 1;

end;

[m, n] = size(source_data);

normalized_data = zeros(m, n);

%% min-max標準化(min=0,max=1)

if kind == 1

for i = 1:n

ma = max( source_data(:, i) ); % matlab中變數名不宜和函式名相同,所以不用max、min、mean等變數名

mi = min( source_data(:, i) );

normalized_data(:, i) = ( source_data(:, i)-mi ) / ( ma-mi );

endend%% z-score標準化

if kind == 2

for i = 1:n

mea = mean( source_data(:, i) );

st = std( source_data(:, i) );

normalized_data(:, i) = ( source_data(:, i)-mea ) / st;

endend

訓練集測試集劃分

% 測試資料佔全部資料的比例

testratio = 0.3;

% 訓練集索引

trainindices = crossvalind('holdout', size(data, 1), testratio);

% 測試集索引

testindices = ~trainindices;

% 訓練集和訓練標籤

traindata = data(trainindices, :);

trainlabel = label(trainindices, :);

% 測試集和測試標籤

testdata = data(testindices, :);

testlabel = label(testindices, :);

資料讀取

num=xlsread('data1.xlsx','sheet1','a1:e375');

input_train=num(1:210,1:4)';

output_train=num(1:210,5)';

input_test=num(210:300,1:4)';

output_test=num(210:300,5)';

MATLAB矩陣基本操作1

matlab 矩陣操作 結構矩陣 和單元矩陣 結構矩陣 格式為 結構矩陣元素.成員名 表示式a 1 x1 10 a 1 x2 liu a 1 x3 10 21 34 78 a 2 x1 11 a 2 x2 xia a 2 x3 11 121 34 78 a 3 x1 12 a 3 x2 cai a ...

MatLab學習1 矩陣操作

1 簡單矩陣構造 a 1,2,3 構造乙個1x3的矩陣,各元素為1,2,3 或者a 1 2 3 使用空格 b 1,2,3 7,4,9 兩行三列矩陣b 2 特殊矩陣構造 1 ones函式 a ones n 構造nxn的全1矩陣 b ones m,n 產生mxn的全1矩陣 2 zeros 類似的有 a ...

Matlab基本操作

1.向量 1 直接輸入 行向量 a 1,2,3,4,5 列向量 a 1 2 3 4 5 a 1 5 生成的行向量是a a 1,2,3,4,5 2 矩陣賦值給向量 矩陣第一行賦值給向量 a b 1,矩陣第一列賦值給向量 a b 1 任意階矩陣轉換成行向量 a b 任意階矩陣轉換成列向量 b1 b a1...