全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
10542 6
2014-09-12
求各位大神指导,真的自己不能找到错误了
代码如下:
IndexOfData=num;
[m,n]=size(IndexOfData);
for i=1:m
    for j=1:n
        if IndexOfData(i,j)==-100000
           IndexOfData(i,:)=[];
        end
    end
end

错误显示:
Index exceeds matrix dimensions.

Error in UserData (line 9)
        if IndexOfData(i,j)==-1000

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2014-9-12 17:05:49
假设行数m为10,当符合条件时就会删除一行,这时候m就会减一,你的i还是10,肯定会报错了。
讲得有点啰嗦了,就是你的矩阵行数是动态变化的,而你的i却未能跟着行数变
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-9-12 20:57:25
一句话就可以搞定的:
num(any(num==-100000,2))

运行前先备份数据
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-9-13 14:05:47
Xaero 发表于 2014-9-12 20:57
一句话就可以搞定的:
num(any(num==-100000,2))
谢谢,已解决~用了一个比较纠结的方法。我一会儿去试试这个
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2017-5-11 22:51:42
能问一下 你最后用的什么方法解决的吗  我现在也遇到了
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2017-5-12 10:19:40
兮墨 发表于 2017-5-11 22:51
能问一下 你最后用的什么方法解决的吗  我现在也遇到了
[location1,location2]=find(num==-100000);
row=unique(location1);
num(row,:)=[];
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群