matlab如何将矩阵中处于某一范围的值替换为特定值
例如有个矩阵A=[1,2,1,2;1,3,4,5;2,4,3,1]我想把小于等于2的值变为0,大于2小于等于4的值变为1,大于4的值变为2...
例如有个矩阵A=[1,2,1,2;1,3,4,5;2,4,3,1]我想把小于等于2的值变为0,大于2小于等于4的值变为1,大于4的值变为2
展开
4个回答
推荐于2016-08-20 · 知道合伙人教育行家
关注
展开全部
两种方式
1,不用循环
代码:
A=[-5, -4, -3, -2; -1, 0, 1, 2; 3, 4, 5, 6];
%a<=-2 ---->0; -2<a<=3--->1; a>3------->2.
sizeA = size(A);
a1 = zeros(sizeA);
a2 = a1;
a3 = a1;
a1(A <= -2) = 0;
a2(A > -2 & A <= 3) = 1;
a3(A > 3) = 2;
B = a1 + a2 + a3
2,用盯启循岩知环凯枣如
代码:
A=[-5 -4 -3 -2;-1 0 1 2;3 4 5 6]
for ii=1:3
for jj=1:4
if A(ii,jj)<=-2
A(ii,jj)=0;
elseif A(ii,jj)>-2&&A(ii,jj)<=3
A(ii,jj)=1;
elseif A(ii,jj)>3
A(ii,jj)=2;
end
end
end
A
1,不用循环
代码:
A=[-5, -4, -3, -2; -1, 0, 1, 2; 3, 4, 5, 6];
%a<=-2 ---->0; -2<a<=3--->1; a>3------->2.
sizeA = size(A);
a1 = zeros(sizeA);
a2 = a1;
a3 = a1;
a1(A <= -2) = 0;
a2(A > -2 & A <= 3) = 1;
a3(A > 3) = 2;
B = a1 + a2 + a3
2,用盯启循岩知环凯枣如
代码:
A=[-5 -4 -3 -2;-1 0 1 2;3 4 5 6]
for ii=1:3
for jj=1:4
if A(ii,jj)<=-2
A(ii,jj)=0;
elseif A(ii,jj)>-2&&A(ii,jj)<=3
A(ii,jj)=1;
elseif A(ii,jj)>3
A(ii,jj)=2;
end
end
end
A
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
展开全部
两种方式
1,不用循环
代码:
A=[-5,
-4,
-3,
-2;
-1,
0,
1,
2;
3,
4,
5,
6];
%a<答稿塌=-2
---->0;
-2<a<=3--->1;
a>3------->2.
sizeA
=
size(A);
a1
=
zeros(sizeA);
a2
=
a1;
a3
=
a1;
a1(A
<=
-2)
=
0;
a2(A
>
-2
&
A
<=
3)
=
1;
a3(A
>
3)
=
2;
B
=
a1
+
a2
+
a3
2,用循环
代清圆码:
A=[-5
-4
-3
-2;-1
0
1
2;3
4
5
6]
for
ii=1:3
for
jj=1:4
if
A(ii,jj)<=-2
A(ii,jj)=0;
elseif
A(ii,jj)>-2&&A(ii,jj)<敬改=3
A(ii,jj)=1;
elseif
A(ii,jj)>3
A(ii,jj)=2;
end
end
end
A
1,不用循环
代码:
A=[-5,
-4,
-3,
-2;
-1,
0,
1,
2;
3,
4,
5,
6];
%a<答稿塌=-2
---->0;
-2<a<=3--->1;
a>3------->2.
sizeA
=
size(A);
a1
=
zeros(sizeA);
a2
=
a1;
a3
=
a1;
a1(A
<=
-2)
=
0;
a2(A
>
-2
&
A
<=
3)
=
1;
a3(A
>
3)
=
2;
B
=
a1
+
a2
+
a3
2,用循环
代清圆码:
A=[-5
-4
-3
-2;-1
0
1
2;3
4
5
6]
for
ii=1:3
for
jj=1:4
if
A(ii,jj)<=-2
A(ii,jj)=0;
elseif
A(ii,jj)>-2&&A(ii,jj)<敬改=3
A(ii,jj)=1;
elseif
A(ii,jj)>3
A(ii,jj)=2;
end
end
end
A
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
A=[1,2,1,2;1,3,4,5;2,4,3,1];
for i=1:3
for j=1:4
if (A(i,j)<=2)
A(i,j)=0;
end
if (A(i,j)>2)&&(A(i,j)<=4)
A(i,j)=1;
end
if A(i,j)>4
A(i,j)=2;
end
end
end
A
for i=1:3
for j=1:4
if (A(i,j)<=2)
A(i,j)=0;
end
if (A(i,j)>2)&&(A(i,j)<=4)
A(i,j)=1;
end
if A(i,j)>4
A(i,j)=2;
end
end
end
A
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
三句就可以了
A(A<=2) = 0;
A(A>2 & A<=4) = 1;
A(A>4) = 2;
A(A<=2) = 0;
A(A>2 & A<=4) = 1;
A(A>4) = 2;
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询