polyfitのnを求める関数はありますか?

7 views (last 30 days)
Yumi Iwakami
Yumi Iwakami on 3 Mar 2020
Answered: Yumi Iwakami on 4 Mar 2020
polyfitを使って近似曲線を描こうとしているのですが,最適なnの決定方法はありますか?
curvefitting ToolBoxは持っていないのでpolyfit関数で行おうと思っています.
https://jp.mathworks.com/help/matlab/ref/polyfit.html を参考にやってみているのですが,どの手法もプロットの結果を見て次元数を決めているように見えます.
1つのデータの処理であればこの手法でできているのですが,各ファイルごとにxとyのデータが入っており,ファイルごとに近似曲線を求めたいので1つ1つプロットの結果をみてnのパラメータを決めるのは現実的ではないと考ええたため,質問させていただきました.
よろしくお願いいたします.
  3 Comments
Hiroyuki Hishida
Hiroyuki Hishida on 4 Mar 2020
これまでにでているコメントにプラスしてですが、(もっともシンプルであろう)一次式で近似してはいけない理由がないので、(まずは)一次式で近似すると言い切るのも一つの手かもしれません。

Sign in to comment.

Answers (1)

Yumi Iwakami
Yumi Iwakami on 4 Mar 2020
みなさま,コメントありがとうございます.
処理しようとしているデータは7万件くらいで,全部見るのは不可能に近いので質問させていただきました.
Kusanoさまのご意見をもとに考えたところ,私の求めたいデータはたぶん2次式か3次式の近似になると思われます.任意に選択した1つのデータを可視化し,2次式,3次式,4次式でフィッティングしてみたところ,4次式は過適合でした.(パッと見では4次式に形が近いとも思われたので4次も試しています)
Kentaさまのおっしゃる通り,仮説をたてる必要がありますね.
Hisidaさまのおっしゃる,1次式では今回は難しそう(おそらく全部曲線だと思われるため)なので,数個のデータをランダムに選び,データの傾向を見て2次式でいけるか,3次式のほうがよいのかを検討しようと思います.
ありがとうございました.

Categories

Find more on 二次計画法と錐計画法 in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!