我目前正在尝试用273614 x25矩阵制作一个小矩阵,其中包含吸收线位置和前N个最强线强度。然而,我只需要波数在2045-2155范围内的相应值,这是矩阵中的一列。
到目前为止,将索引和范围设置得很好,但我尝试了一个小的for循环,它从第1列获取这些索引和范围,并尝试分配前N个最高值的索引。
我只需要一个N × 2矩阵,第一列是波数,第二列是前N行的强度及其相应的波数。
到目前为止,我得到了这个:
A = readmatrix("linelist_H216O.txt");
RangeMin = 2045;
RangeMax = 2155;
MinInd = find(A(:,1)>RangeMin,1);
MaxInd = find(A(:,1)>=RangeMax,1);
B = A(RangeMin:RangeMax,5);
L = maxk(B, 20, 1);
IND = zeros(length(L),1);
for i = 1:length(L)
IND(i) = find(A(MinInd:MaxInd,5)==L(i,:),1);
end
TopLines = [IND+MinInd, L];
字符串
但是问题在第11行,这里说两边的元素个数不同,有人知道怎么解决这个问题吗?
1条答案
按热度按时间pw9qyyiw1#
我设法做到了这一点:
字符串