2つの列ベクトル「A」と「B」があります。両方のベクトルの最初の列は時間です。次のプロット他のベクトルの変化に応じたMATLAB内のベクトルの補間
plotyy(A(:,1),Binter,A(:,1),A(:,2))
を行うことにより
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
'A' は3つの異なるレベルを持っていることを見ることができます。 「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)急速に変化している[差分((:、2))> = 0.1]。残りは補間を行うべきではなく、元の値を考慮する必要があります。変化は「(:、2)」とき小さいかだけだった:アウトプットは「(、2)」に対応するために行わ何の補間はありません「Required_Output」は、この
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
のようなものでなければなりません'B(:、2)'の1つのポイントは、 'A(:、2)'の異なるレベルで利用可能でした。 'A(:、2)'が定義されたものより大きくなるか、またはB(:、2)で使用可能な複数の点が変更されるまで補間が開始されます。 'A(:、2)'の異なるレベルのために。 あなたの提案/専門知識をありがとうございます。
以下の回答この更新された問題には有効ではありません。これを新しい質問と考えてください。お返事ありがとうございます。 – Umar