全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
4503 4
2015-12-26
直接上例子吧,假设矩阵
>> magic(6)

ans =

    35     1     6    26    19    24
     3    32     7    21    23    25
    31     9     2    22    27    20
     8    28    33    17    10    15
    30     5    34    12    14    16
     4    36    29    13    18    11
我想将矩阵每一行中大于10的元素之后的所有元素都变为0,即变为

    35     0     0    0    0   0

     3    32     0    0    0   0

    31     0     0    0    0   0

     8    28    0    0     0   0

    30     0    0    0     0   0

     4    36    0    0     0   0

由于矩阵很大,怎么样才能快速实现元素的替换,最好少用for循环提高效率,求助各位,谢谢!



二维码

扫码加我 拉你入群

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

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

全部回复
2015-12-27 08:20:13
cooper56 发表于 2015-12-26 15:22
直接上例子吧,假设矩阵
>> magic(6)

设矩阵为M
M(M>10)=0;
二维码

扫码加我 拉你入群

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

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

2015-12-27 08:21:29
enxizheng 发表于 2015-12-27 08:20
设矩阵为M
M(M>10)=0;
不好意思,看错你的问题了,上面的回答不对
二维码

扫码加我 拉你入群

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

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

2015-12-27 08:31:48
M=magic(6);
for n=1:6
    M(n,find(M(n,:)>10,1)+1:6)=0;
end
二维码

扫码加我 拉你入群

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

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

2015-12-27 10:07:35
enxizheng 发表于 2015-12-27 08:31
M=magic(6);
for n=1:6
    M(n,find(M(n,:)>10,1)+1:6)=0;
谢谢!谢谢!
二维码

扫码加我 拉你入群

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

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

栏目导航
热门文章
推荐文章

说点什么

分享

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