divide data set in matlab code

How can divide dataset into 80% training set and 20% test set in matlab code??

回答 (2 件)

Walter Roberson
Walter Roberson 2015 年 5 月 17 日

1 投票

nrows = size(YourData,1);
r80 = round(0.80 * nrows);
trainingset = YourData(1:r80,:,:);
testset = YourData(r80+1:end,:,:);

3 件のコメント

Walter Roberson
Walter Roberson 2015 年 5 月 17 日
nrows = size(YourData,1);
r80 = round(0.80 * nrows);
rand80 = randperm(nrows,r80);
trainingset = YourData(rand80,:);
testset = YourData;
testset(rand80,:) = [];
Suzanne Hussein
Suzanne Hussein 2015 年 5 月 17 日
?? Error using ==> randperm Too many input arguments.
Error in ==> dividet at 3 rand80 = randperm(nrows,r80); how can i solve it?
Walter Roberson
Walter Roberson 2015 年 5 月 17 日
You are using an old version of MATLAB. The equivalent code is
rand80 = randperm(nrows);
rand80 = rand80(1:r80);

サインインしてコメントする。

Image Analyst
Image Analyst 2015 年 5 月 17 日

0 投票

randperm() is probably the function you're looking for. We can help more if you say what your dataset is.
dataset is a deprecated variable type - the Mathworks recommends that you use a table instead.

1 件のコメント

Suzanne Hussein
Suzanne Hussein 2015 年 5 月 17 日
my dataset is 99X13 double, 12 Dimensions and last column is label of classes

サインインしてコメントする。

カテゴリ

質問済み:

2015 年 5 月 17 日

コメント済み:

2015 年 5 月 17 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by