それは基本的な質問です。を使用して散布点に線を当てはめていpolyfit
ます。散布点のX値が同じでpolyfit
、線が合わない場合があります。この状況に対処できるものが必要です。結局のところ、それはちょうどラインフィットです。
XとYを入れ替えてから、線を引くことができます。散布点のセットがたくさんあり、線をチェックする一般的な方法が必要なため、より簡単な方法です。
主な目標は、適切な線を見つけ、非線形の特徴を削除することです。
それは基本的な質問です。を使用して散布点に線を当てはめていpolyfit
ます。散布点のX値が同じでpolyfit
、線が合わない場合があります。この状況に対処できるものが必要です。結局のところ、それはちょうどラインフィットです。
XとYを入れ替えてから、線を引くことができます。散布点のセットがたくさんあり、線をチェックする一般的な方法が必要なため、より簡単な方法です。
主な目標は、適切な線を見つけ、非線形の特徴を削除することです。
まず第一に、これはあなたが使用しているフィッティングの方法が原因で起こります。を実行するときは、線からの距離polyfit
に対して最小二乗法を使用しています。Y
(出典:une.edu.au)
明らかに、垂直線では機能しません。ちなみに、縦線に近いものがあっても、数値的に不安定な結果になることがあります。
2つの解決策があります:
(MathWorldから-Wolfram Webリソース:wolfram.com)
Polyfitは線形通常最小二乗近似を使用し、結果のファンデルモンド行列はランクが不足するため、横座標を繰り返すことはできません。もっと統計的な性質のものを見つけようとすることをお勧めします。アンドレイス法を研究したい場合は、通常、最小二乗法または直交距離回帰という名前で呼ばれますhttp://en.wikipedia.org/wiki/Total_least_squares
また、x値が同時に存在することを検出し、データを原点を中心に回転させ、線をフィッティングしてから、線を元に戻す可能性も暫定的に提案します。これがどれほどうまく機能しないかは言えませんでしたし、精度要件に基づいてそれがオプションであるかどうかを判断できるのはあなただけでした。