我有兩個列向量'A'和'B'。兩個向量中的第一列都是時間。MATLAB中的矢量插值取決於另一個矢量的變化
A =
35.2985 5.7057
35.2991 5.7098
35.2997 5.6880
35.3004 5.6739
35.3010 5.7140
35.3016 6.0141
35.3022 6.3620
35.3029 6.4793
35.3035 6.4663
35.3041 6.4665
35.3047 6.4646
35.3053 6.4844
35.3060 6.4743
35.3066 6.4865
35.3072 6.4878
35.3078 6.4975
35.3085 6.4952
35.3091 6.4958
35.3097 6.4734
35.3103 6.4082
35.3109 6.3767
35.3116 6.3786
35.3122 6.3796
35.3128 6.5867
35.3134 7.0733
35.3141 7.3427
35.3147 7.3238
35.3153 7.3093
35.3159 7.3188
35.3166 7.3436
B =
35.2985 1.0500
35.3053 1.0600
35.3085 1.0400
35.3166 1.0700
這樣做下面的圖形
plotyy(A(:,1),Binter,A(:,1),A(:,2))
它是可見的是 'A' 有三個不同的層次。對於'A'的每個等級都有對應的'B'值。現在我需要基於時間A(:,1)得到B(:,2)的插值。 'Binter'是長度爲'A'的列。
Binter= interp1(B(:,1),B(:,2),A(:,1),'linear')
Binter =
NaN
1.0509
1.0518
1.0527
1.0537
1.0546
1.0555
1.0564
1.0573
1.0582
1.0591
1.0597
1.0558
1.0519
1.0481
1.0442
1.0403
1.0421
1.0444
1.0468
1.0491
1.0514
1.0537
1.0560
1.0583
1.0606
1.0629
1.0652
1.0675
1.0698
但我需要開始用於periond做唯一內插,其中A(:,2)正在迅速改變[DIFF(A(:,2))> = 0.1]。其餘的不應該做任何插值,但要考慮原始值。該出認沽應該是這樣的
Required_Output =
NaN
1.0500
1.0500
1.0500
1.0500
1.0525
1.0550
1.0575
1.0600
1.0600
1.0600
1.0600
1.0558
1.0519
1.0481
1.0442
1.0400
1.0400
1.0400
1.0400
1.0400
1.0400
1.0400
1.0475
1.0550
1.0625
1.0700
1.0700
1.0700
1.0700
在「Required_Output」沒有相應完成,A(:,2)「插值時的變化,A(:,2)」體積較小或僅有'B(:,2)'中的一個點在'A(:,2)'的不同等級中可用。 'B(:,2)'中的單個可用點在沒有任何插值的情況下進行。插值開始,直到變化'A(:,2)'保持大於'B(:,2)中定義的或多於一個點可用的點' '爲'A(:,2)'中的不同層次。 感謝您的建議/專業知識。
下面的答案對於此更新的問題無效。請認爲這是一個新問題。謝謝 – Umar