我有一个NaN(155 * 135)矩阵,另一个矩阵显示行号和列号的特定值。有没有办法可以将这些值分配回NaN矩阵,最终具有相同的位置,其他所有内容都保留为NaN?
R C Value
19 4 -1133.803
20 4 -295.6810
32 4 -1906.021
20 5 -1027.048
21 5 -293.0065
32 5 236.0525
33 5 -425.1248
答案 0 :(得分:2)
使用sub2ind
:
data = [
% R C Value
19 4 -1133.803
20 4 -295.6810
32 4 -1906.021
20 5 -1027.048
21 5 -293.0065
32 5 236.0525
33 5 -425.1248];
N = nan(155,135);
N(sub2ind(size(N),data(:,1),data(:,2))) = data(:,3);
所以你得到N(min(data(:,1)):max(data(:,1)),min(data(:,2)):max(data(:,2)))
(即N(19:32,4:5)
):
ans =
-1133.8 NaN
-295.68 -1027
NaN -293.01
NaN NaN
NaN NaN
NaN NaN
NaN NaN
NaN NaN
NaN NaN
NaN NaN
NaN NaN
NaN NaN
NaN NaN
-1906 236.05
NaN -425.12
答案 1 :(得分:1)