操纵某些符合一定标准的矩阵元素

1视图(最近30天)
普雷恩·兰卡(Praneeth Lanka)
评论: Kalyan Acharjya 2021年8月30日
假设我的矩阵大小为100x100。我希望操纵矩阵的某些元素,这些元素在第10至15行和库尔姆11至13行中,这是负数。我希望更改指定行之外的负面元素。
可以在不创建任何新变量的情况下执行此操作吗?通过使用逻辑索引?
编辑:我已经概括了这个问题,但这是我打算实现提供的解决方案的地方。我有一个15x16矩阵,其中矩阵的随机位置有NAN值。我想将这些NAN值设置为仅在第2至15行和第2至16列形成的子矩阵中的0s'。因此,在这种情况下,我将需要使用 伊斯南 功能。

答案(1)

Kalyan Acharjya
Kalyan Acharjya 2021年8月30日
mat = randi([ - 5,5],[100,100]);%样品矩阵
[r,c] = find(MAT(10:15,11:13)<0 == 1);%获得指数
垫子(9+r,10+c)= x;%x管理任何价值
请注意,解决方案可能会更容易。
2条评论
Kalyan Acharjya
Kalyan Acharjya 2021年8月30日
是的,你可以得到...
IDX = MAT(10:15,11:13)<0;
但是在操作过程中,您可能必须使用行和列编号组。

登录发表评论。

s manbetx 845


发布

R2021A

社区寻宝

在Matlab Central中找到宝藏,发现社区如何为您提供帮助!

开始狩猎!