• ベストアンサー

エクセルの多項式近似について

エクセルのグラフの機能で、多項式近似というものがあるんですが、この多項式近似に使用されている、数値解析の考え方はなんでしょうか? 最小二乗法が使われているのでしょうか? ご存知の方お教え下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.2

ヘルプで「近似曲線」などを調べてみると、 | この分析方法は、回帰分析とも呼ばれます。 との事で、一般的に回帰分析と呼ばれる方法が利用されます。 -- Excelでの回帰分析に関して、以下のページが参考になります。1次式でしか使った事無かったですが、なるほど。 マック、まんが、アニメのページ? - Excelでn次多項式の係数を求めたい【Mac/Windows】 http://www.amy.hi-ho.ne.jp/fujisawa/mac/tips/excel_lesq.html

その他の回答 (3)

  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.4

回答がつかないようなのでExcel Xでちょっと実験してみましたところ、グラフに出てくる多項式近似の係数は、単純な線形最小二乗法で計算した結果と一致しています。 実験のやり方は以下の通りでした。 まずグラフにするxとyの表を作りました。 (1) A列3行目からA列20行目までにテキトーな数値を入力します。これがxの値。(たとえば1から順番に整数を入れるのでも良いのです。) (2) C列1行目からF列1行目までに それぞれテキトーな数値を入力します。これが多項式の係数です。たとえば順に3、4、7、6とでも入れてみます。 (3) B列3行目に 式 =C$1*A3^3+D$1*A3^2+E$1*A3+F$1+$A$1*(rnd()-0.5) を入れ、B列20行目まで「以下同様」ってやります。これが多項式に誤差を入れて計算したyです。誤差の大きさはA行1列に適当な値を入れることで調節します。たとえば1000とか入れてみます。 次に散布図のグラフを描かせて、近似多項式を計算させました。 (4) A列とB列を使ってグラフを描き、グラフの「近似曲線の追加」機能を使って次数を3に指定した多項式近似をやらせて、その多項式を表示させます。 誤差$A$1*(rnd()-0.5)を入れたので、多項式の係数は当然ながらC列1行目~F列1行目で与えた係数とは違った値になります。 さて、自前で線形最小二乗法による近似多項式の係数を計算します。本来まじめに数値計算をやるには、計算誤差や処理効率に配慮すべきなのですが、この場合は手抜きで十分です。Excelの逆行列の機能を利用して簡単にやっつけてしまいます。 (5) C列3行目に=A3^3、D列3行目に=A3^2、E列3行目に=A3、F列3行目に=1を入れます。そして、C列3行目からF列20行目までを「以下同様」ってやります。(この結果、F列には1ばっかりが入ります。) (6) B列22行目からF列25行目に4行5列の行列 {=MMULT(TRANSPOSE(C3:F20),B3:F20)} を作ります。(もし行列の入力の操作方法をご存じなければ、マニュアルを見てください。カンでやったんじゃ旨く行きませんから。Excelのここんとこはもお、酷い仕様だと思います。) これが正規方程式の係数になっています。これを解きます。 (7) C列27行目からF列30行目に4行4列の行列 {=MINVERSE(C22:F25)} を作ります。 (8) B列27行目からB列30行目に4行1列の行列つーかベクトル {=MMULT(C27:F30,B22:B25)} を作ります。これがxとyの値だけに基づいて最小二乗法で計算した係数です。グラフに表示されている近似式の係数と比較すると、イロイロ条件をいじっても表示した桁数の範囲で一致していました。

  • sanori
  • ベストアンサー率48% (5664/11798)
回答No.3

#1です。 そうそう。「回帰」という単語、ありましたね。 昔のLotus1-2-3では、1次式の最小二乗法を行なうメニューが「回帰」という名前でした。 前にも書きましたが、2次式以上は、私は手作りでやりました。 さて、ちょっとは数学的表現も書いておいたほうがよいかなと思いますので、追記します。 いちばん簡単な例で、2次の近似曲線の導出の始まり部分を書いてみましょう。 今、手元に文献がないので、頼りない私の自力で書きます。(笑) 点(x1,y1),(x2,y2)・・・(xn,yn)で構成されるデータに対する2次の近似曲線を考えます。 各点がその近似曲線からどれだけ外れるかをεで表します。 y1 = a・x1^2 + b・x1 + c + ε1 y2 = a・x2^2 + b・x2 + c + ε2 ・・・ yn = a・xn^2 + b・xn + c + εn εが左辺に行くように直します。 -εk = a・xk^2 + b・xk + ck - yk はずれの程度εは、プラスの値とマイナスの値がありますから、2条で考えるほうが合理的です。 (1次の最小二乗法と同じ考え方) そこで両辺を2乗します。 (εk)^2 = ・・・(略) 次に、k=1~n の範囲の全てを足し算します。 すると、 Σ(εk)^2 = ・・・(略) (k=1~n) 最小二乗法の考え方なのですから、要するに、これの左辺が最小になればよいのです。 ・・・ということは、右辺の微分がゼロになればよいわけです。(関数が極小値を取るときは、そこでの微分の値がゼロになりますよね?) 右辺の微分とは言っても、変数が a, b, c の3個あるので、それぞれの偏微分を計算することになります。 途中の計算を書くと煩雑なので思いっきり省略しますが、 a, b, c について、それぞれ偏微分して、 その偏微分して得られた式の値がゼロということで計算すれば、 たしか3個の式による連立方程式が得られたと思います。 こうして、a, b, c の値が求まります。 →ということは、2次の近似曲線が求まったことになります。 #1のところに書いていた「収束云々ではなく、一意に解ける」とは、このことです。 以上、だいたいこんな感じですが、ざざーっと書きましたので、どこか書き落とし・誤りがあったら、ごめんなさい。

  • sanori
  • ベストアンサー率48% (5664/11798)
回答No.1

私は、こんな経験があります。 エクセルがまだこの世に登場していない時期だったと思いますが、Lotus1-2-3で、多項式近似を計算してグラフにしていました。 「最小二乗法」は、おそらく、1次式にのみ使われる言葉だったと思いますが、 最小二乗法の考え方を2次以上の式へ近似するときへも拡張した解法があります。 その近似式というのは、収束させるとか云々ではなくて、一意に「解く」ことができます。 例えば、「点がN個あったら、それに対する5次の近似式は、これです」という感じで。 以下、あくまでも予想ですが、 昔のLotus1-2-3で、私ごときが簡単にできた計算ですから、きょう日のExcelで自動計算出来ないはずはないと思いますし、たぶん、それではないかと思います。

関連するQ&A

  • 多項式で近似

    問題で 「x(範囲はaからb)で定義されている関数f(x)を多項式C0-C1xで近似する方法を述べよ」 というのがあるのですが、条件が少なく良く分かりません。。。 多項式近似ということで最小二乗法などで直線に近似するのかな、と考えているんですが。。。 なにか良い方法があったら教えていただきたいと思います。 よろしくお願いします。

  • エクセル多項式近似について

    エクセルで多項式近似の横に次数とあるのですが、これは何の数字をあらわすのでしょうか? また、グラフに普通に曲線をつけるのと、多項式近似では異なるのでしょうか?

  • excelの線形近似について

    excelのグラフで線形近似というのは,もともとの原理は最小二乗法なのでしょうか? どのような原理で近似しているのか知りたいので,計算方法など教えてください. よろしくお願いします.

  • Excelの近似値はどれを使うの?

    予測を立てるため、Excelのグラフウィザードで近似値を求めようと思ってます。しかし、以下の近似値を求める方法があり、 ○線形近似 ○多項式近似 ○対数近似 ○指数近似 ○累乗近似 ○R-2 乗値 ○移動平均 どれを使用すればよいのか、わかりません。「この値を予測するときは、この近似法」というのがあれば、教えてください。 ちなみに、調べたいのは2003年~2005年までの医療費をデータとして、持っており2006年から先を予測しようと考えております。 どうか、ご教授ください。お願いします。

  • 近似多項式について教えてください

    電気のフィルタ系の資料を読むと e^(-s) を近似多項式に展開する際 e^(-s) = 1/(coshs + sinhs) と変形して coshs sinhs を各々マクローリン展開して近似多項式を求めており 結果として 2乗の近似多項式 1/(s^2 + 3*s + 3) 3乗の近似多項式 1/(s^3 + 6*s^2 + 15*s + 15) となっているのですが  e^(-s^2) の近似多項式を求めたい場合 どういった変換を行うのがよいのでしょうか? 結果として 上の結果と同じような形で 2乗の近似多項式 1/(s^2 + a*s + b) 3乗の近似多項式 1/(s^3 + c*s^2 + d*s + e) といった形にしたいのです また追加の質問で申し訳ありませんが e^(-s) の場合 なぜ変形しているのでしょうか? 1/(s^2 + 3*s + 3)の形にするためでしょうか? 教えていただけると助かります よろしくお願いします

  • Excel近似曲線の仕組みについて

    Excelグラフの近似曲線についての質問です。 業務でグラフを作成し、近似曲線を出す予定ですが、 Excelの近似曲線はどういった仕組みを使って書き込む方法がありますか? 当方は最小二乗法で書き込む方法しか存じ上げておりませんが、 それ以外にExcelグラフで近似曲線を求める方法はありますか? 業務上精度が悪いと使用できないため、もし他に近似曲線を出せる方法があれば それも教えて頂きたいです。 よろしくお願いいたします。

  • Excelの使い方

    エクセルでグラフを書きました。それについて近似曲線を書くのですが、最小二乗法で書かなければなりません。近似曲線の追加を選択すると6種類曲線の種類が出てくるのですが、どれが最小二乗法のグラフなのでしょうか?

  • 近似式の導出方法

    一次の近似の場合は最小二乗法などによって近似できることはわかるのですが、 多項式の場合の近似式を求めるに当たってどのような方法をすればいいのですか?より正確なものがいいので次数は高いほうがいいと思うのですが。 ご教授お願いいたします。

  • 多項式近似の係数をセルに抜き出したい。

    以前以下のような質問がありましたが、線形近似だけではなく、多項式近似の y = ax^2 + bx + c のa、b、cをセル上に抜き出したいのですが、関数で対応できるでしょうか? もし別のソフトで可能であれば、ソフト名を教えてください。 ====以下、過去の質問から引用====== エクセルのグラフには、近似曲線を表示する機能がありますが、 その近似曲線の係数を参照元にして、セル上の関数計算をしたいと 思っています。 例えば、線形近似ならば、  y= ○○○x + ●●● という式をグラフ上に表示できるわけですが、この係数の ○○○や●●●を他のセルから参照したいんです。 グラフの元になる数値を変更した場合、リンクして変わる ようにしたいので、手入力の転記では困るのです。 もし可能でしたら、ご教授ください。

  • 波動関数の近似

    井戸型ポテンシャルの波動関数(基底状態)を、オイラー法を用いて数値的に出し、グラフにしました。オイラー法は近似なので誤差があると思うのですが、誤差がどのくらいあるのかを調べるべく解析的に出したグラフと比較したいのです。基底状態の波動関数を解析的に解いてエクセルにグラフとして表すにはどのようなことをすれば良いのでしょうか? 物理学については無知なので宜しくお願いします。