compare two vectors then insert missing element
3 次查看(过去 30 天)
显示 更早的评论
i have a matrix :
A=[ 1.000 0.5860 0.01403
2.500 0.7395 0.01277
3.500 0.8450 0.01146
4.000 0.8967 0.01173
4.500 0.9476 0.01215
5.000 0.9962 0.01280
6.000 1.0973 0.01367
6.500 1.1398 0.01457
7.000 1.1889 0.01515
8.000 1.2574 0.01915
8.500 1.2816 0.02234
9.500 1.3300 0.02731
10.500 1.3267 0.03649 ]
for the first column let say its
B=[ 1.000
1.500
2.000
2.500
3.500
4.000
4.500
5.000
5.500
6.000
6.500
7.000
7.500
8.000
8.500
9.000
9.500
10.000
10.500]
i want to compare A(:1) with b then insert missing rows to make A(:,1) = b , then perform interpolation for A(:,2) and A(:,3) new rows
thanks
1 个评论
Chunru
2021-4-29
Bq = sort(union(B, A(:,1))); % the query points are from B and A(:,1)
C = interp1(A(:, 1), A(:, 2:end), Bq); % Interpolation
C = [Bq C]; % The result
回答(1 个)
Stephen23
2021-4-29
Simpler:
A=[ 1.000 0.5860 0.01403
2.500 0.7395 0.01277
3.500 0.8450 0.01146
4.000 0.8967 0.01173
4.500 0.9476 0.01215
5.000 0.9962 0.01280
6.000 1.0973 0.01367
6.500 1.1398 0.01457
7.000 1.1889 0.01515
8.000 1.2574 0.01915
8.500 1.2816 0.02234
9.500 1.3300 0.02731
10.500 1.3267 0.03649 ];
B = 1:0.5:10.5;
C = interp1(A(:,1),A,B(:))
0 个评论
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!