Rのlm
関数を使用して、複数の正弦波(正確には3つ)をデータに適合させようとしていますが、正しい:線形回帰(R)を持つ複数の正弦波をフィット
緑色の線は、それがあるべきよう、ちょっと不安定ですが、それは(放物線が追加で)唯一のサインのようだ、と非常によくデータと一致していません。私は間違って何をしていますか?
Iを使用コード:(。。これらは私に与えられたように期間が、ハードコードされている。また、timetopdh
は、ある時点でheightdh
水位、秒単位の時間である)
plot(timetopdh,heightopdh,xlim=topvector, ylim = c(0,270))
period1 <- 545
period2 <- 205
period3 <- 85
sin11 <- sin(2*pi/period1*timetopdh)
sin12 <- cos(2*pi/period1*timetopdh)
sin21 <- sin(2*pi/period2*timetopdh)
sin22 <- cos(2*pi/period2*timetopdh)
sin31 <- sin(2*pi/period3*timetopdh)
sin32 <- cos(2*pi/period3*timetopdh)
lmsinus <- lm(heightopdh ~ poly(timetopdh,2) + sin11 + sin12 + sin21 + sin22 + sin31 + sin32)
fitted_for_lines <- fitted(lmsinus)
pred <- predict(lmsinus, newdata=data.frame(timetopdh = timetopdh))
lines(timetopdh, pred, col=3, lwd=3)
あなたは正しいですが、フィット感が完璧であるとは思わないはずです。しかし、私が意味していたことは、回帰は、三つの正弦波のうち一つだけを考慮に入れるように見えるということです。緑の線は標準的な正弦波と非常に似ています。 あなたは最後の文章で何を意味するのかを詳しく説明できますか(「あなたはそれぞれの名前を要求する必要があります...」)? – Pandaqi
実際のsin変数をどこに入力するのかわかりませんが、プロットする高さと時間のデータは1つだけです。 (私はそれらのファイルに何が入っているかを知るためのデータを見ることはできません)。 Rが3つの計算のsin波をプロットするようにするには、明示的にplot(sin31)に入力して、予測線だけでなく多くの望みを追加します。 – sconfluentus
これらのファイルにすべての点がある場合、波は何らかの方法で重なり、散布図が個々の動きを隠しています。あなたが各波のパスからポイントを引き出し、ラインとしてプロットするならば。お互いの違いやAB線が未加工の点よりも明白になるところ---接続点が物語をもっと語ります。 – sconfluentus