在MATLAB中建立随机数矩阵
发布网友
发布时间:2022-05-07 20:45
我来回答
共2个回答
热心网友
时间:2023-11-01 16:03
在MATLAB中可以使用以下代码来建立10×10的随机数矩阵,并将其中大于40小于60的数用NaN替换:
matlab
A = rand(10,10)*100; % 产生0到100之间的随机数矩阵
B = (A > 40 & A < 60); % 产生逻辑数组,符合条件的元素为1,否则为0
A(B) = NaN; % 将符合条件的元素用NaN替换
上述代码中,rand(10,10)*100产生10×10的随机数矩阵,其中每个元素都在0到100之间均匀分布。然后,通过逻辑数组B,可以得到所有大于40小于60的元素的位置。最后,将这些元素的值用NaN替换即可。
运行上述代码后,可以通过A查看生成的随机数矩阵。
热心网友
时间:2023-11-01 16:04
y=100rand(10,10);
[rows,cols,vals] = find( 40<y & y<60 );
for i=1:length(rows)
y(rows(i),cols(i))=NaN;
end;
y =
NaN 66 87 NaN 70 NaN NaN 79 NaN 66
90 73 NaN 19 NaN 64 5 NaN 65 33
NaN 89 85 12 NaN NaN 94 17 2 90
85 99 21 20 NaN 20 73 40 85 11
74 77 NaN 14 12 95 74 13 NaN 99
NaN NaN 63 19 NaN 8 6 3 86 NaN
24 93 3 4 86 10 86 94 35 71
67 NaN 62 64 88 14 94 30 NaN 100
8 1 36 28 27 16 99 29 5 29
63 12 5 NaN 21 62 86 33 17 NaN追问请问这是最简单的吗?谢谢
追答不知道。
来自:求助得到的回答