| 查看: 2328 | 回复: 2 | |||
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命令的这种效果,又不会打乱数据顺序的? 麻烦大家了,谢谢! ![]() ![]() ![]() |
» 猜你喜欢
谈谈两天一夜的“延安行”
已经有15人回复
EST投稿状态问题
已经有6人回复
职称评审没过,求安慰
已经有15人回复
垃圾破二本职称评审标准
已经有11人回复
投稿Elsevier的Neoplasia杂志,到最后选publishing options时页面空白,不能完成投稿
已经有16人回复
毕业后当辅导员了,天天各种学生超烦
已经有4人回复
聘U V热熔胶研究人员
已经有10人回复
求助文献
已经有3人回复
投稿返修后收到这样的回复,还有希望吗
已经有8人回复
三无产品还有机会吗
已经有6人回复
gupenggogo 
金虫 (小有名气)
















回复此楼