ある時間の値(予測)

1 Ansicht (letzte 30 Tage)
qrqr
qrqr am 13 Feb. 2019
Kommentiert: qrqr am 14 Feb. 2019
以下のデータがあります。
time = [0,0.64,1.28,1.92,2.56,3.2,3.84,4.48]
data = [0,0.5,1.5,2.5,3.5,4.5,5.5,6.5]
plot(time,data)
untitled.png
この時、1秒の時、2秒の時、3秒の時・・・の値を求めることはできますか?

Akzeptierte Antwort

madhan ravi
madhan ravi am 13 Feb. 2019
Bearbeitet: madhan ravi am 13 Feb. 2019
Just use interp1() (see the method it provides and adapt it to your needs):
time = [0,0.64,1.28,1.92,2.56,3.2,3.84,4.48];
data = [0,0.5,1.5,2.5,3.5,4.5,5.5,6.5];
plot(time,data)
hold on
Values=interp1(time,data,1:3);
% ^^^---- 1 to 3 seconds , linear interpolation see the link for other methods
plot(1:3,Values,'+k')
  1 Kommentar
qrqr
qrqr am 14 Feb. 2019
皆様、ありがとうございます。

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Umekawa Yutaro
Umekawa Yutaro am 13 Feb. 2019
こんな形はいかがでしょうか.
元のデータを多項式近似し,その多項式より新たにデータを取得したい時刻のインデックスを持つ配列を作成し求めたい値を取得します.
近似の対象区間や多項式の次数などは対象のデータに合わせて取捨選択してあげればよいかと思います.
time = [0,0.64,1.28,1.92,2.56,3.2,3.84,4.48];
data = [0,0.5,1.5,2.5,3.5,4.5,5.5,6.5];
plot(time,data)
time2 = [1:3]; % 求めたい時刻
p = polyfit(time,data, 2); %多項式近似(例で2次多項式として)
estimatedLine = polyval(p,time2); %近似した多項式の計算
plot(time,data, time2, estimatedLine, 'o');
  1 Kommentar
qrqr
qrqr am 14 Feb. 2019
皆様、ありがとうございます。

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Deep Learning Toolbox finden Sie in Help Center und File Exchange

Produkte


Version

R2013b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!