Matlab 小技巧之矩阵下标以坐标形式选取
例如一个30行20列的数据矩阵Data = rand(30,20); 希望选择出以下第m行第n列的数据,或者对第m行第n列数据进行赋值处理:
可利用sub2ind函数进行对应处理
Example1
Data =
rand(
30,
20);
m =
[ 1 3 4 6 7 10 11 15 20 23 27 29];
n =
[ 3 2 10 8 7 6 3 12 19 14 17 12];
Data(
sub2ind(
size(Data),m,n))
Example2
Data =
zeros(
30,
20);
m =
[ 1 3 4 6 7 10 11 15 20 23 27 29];
n =
[ 3 2 10 8 7 6 3 12 19 14 17 12];
Data(
sub2ind(
size(Data),m,n)) = -
1
转载请注明原文地址: https://ju.6miu.com/read-450125.html