| 查看: 301 | 回复: 0 | ||
gupenggogo
|
[求助]
MATLAB中输入数据的随机问题(ind命令)
|
|
%说明:代码1,输入变量随机(使用ind)。 clc;clear; NUM = xlsread('表格1'); xx=NUM(1:66,1:7);%输入数据是66行,7列。前6列为自变量x1~x6,第7列为因变量y。 ind = randperm(66); xtrain=xx(ind(1:50),1:6);%训练数据x ytrain=xx(ind(1:50),end);%训练数据y xtest=xx(ind(51:end),1:6);%测试数据x ytest=xx(ind(51:end),end);%测试数据y %说明:代码2,输入变量未随机(没有用ind)。 clc;clear; NUM = xlsread('表格1'); xx=NUM(1:66,1:7);%输入数据是66行,7列。前6列为自变量x1~x6,第7列为因变量y。 xtrain=xx(1:50,1:6);%训练数据x ytrain=xx(1:50,end);%训练数据y xtest=xx(51:end,1:6);%测试数据x ytest=xx(51:end,end);%测试数据y 问题(1): 代码2中没有使用ind,每次运算后结果恒定唯一。而代码1中使用ind命令,使得输入变量xtrain、xtrain、xtest和ytest随机从xx中提取,每次运行结果都不一样,且最后计算结果比代码2精确(例如xtrain需要50行,不是按照从第一行到第50行从xx中提取。而是随机从xx的66行中提取,不按照顺序,只要满足提取了50行就OK)。以上2个代码主要用于比较ind,ind使得输入的变量随机生成,提高了验算精度,但是我个人对于为何使用ind会提高计算精度感到困惑,搜索关于ind的资料也基本没有。有没有哪位理解的或者有相关资料可以提供的? 问题(2): ind的好处是提高了运算精度,但是使得最后生成的结果也打乱顺序了(因为一开始从xx中提取时就打乱顺序了)。有没有哪位朋友知道在MATLAB中有没有办法既能达到ind命令的这种效果,又不会打乱数据顺序的? 麻烦大家了,谢谢! ![]() |
» 猜你喜欢
售中科院一区文章,我:8 O 5 5 1 O 5 4,含JCR-TOP
已经有4人回复
Materials Today Chemistry审稿周期
已经有5人回复
溴的反应液脱色
已经有7人回复
国自然申请面上模板最新2026版出了吗?
已经有11人回复
推荐一本书
已经有12人回复
基金申报
已经有4人回复
计算机、0854电子信息(085401-058412)调剂
已经有4人回复
纳米粒子粒径的测量
已经有7人回复
常年博士招收(双一流,工科)
已经有4人回复
参与限项
已经有5人回复














回复此楼