label = text(3:end,7);
dataY = zeros(length(label),length(names));
for i = 1:length(label)
[~,dataYreal(i,1)] = ismember(label{i},names);
dataY(i,dataYreal(i)) = 1;
end
这段代码有人懂吗?能讲讲吗
请问MATLAB中text(3:end,7)是什么意思?
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
joel_1993 2021-10-13 08:24关注你好同学,你这是在做分类问题前处理:
label = text(3:end,7);的意思就是提取text的第7列,第3行到最后一行,赋值给label;
然后后面的dataY是根据label生成的01矩阵,即每一行表示一个分类,列数表示总共有多少类,比如
1-猴子,2-老鼠,3-大象,4-狮子,那么用0,0,0,1表示狮子,用0,1,0,1表示老鼠。类似这种
然后[1,0,0,0; 0,0,3,0; 0,0,0,1]就表示三种,一行表示一种,你的dataY就是这样的东西。有帮助望采纳
本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 3无用