dポイントプレゼントキャンペーン実施中!

こんばんは、初めて書き込みいたします。

Excelでグラフを作成しました。
近似式ではカーブがうまく乗らなかったので他の方法があればどなたかご教授願えればと思い書き込みました。
具体的には下記の通りです。
x軸     y軸
0.146---- 25
0.19----- 30
0.323---- 40
0.72----- 50
1.35----- 60
2.265---- 70
3.525---- 80
5.225---- 90
7.44----- 100
9.95----- 110
11.375--- 115
の数値で散布図グラフにすると右肩上がりですが、急に上がってから緩やかなカーブになります。
必要なのは任意のx値の時のy値がでる関数があればということです。

多項式近似5次式の近似曲線を足してみましたが蛇行したカーブになりますので使えません
そこで任意のx値からy値を出せる関数があればと思いました。

ちなみに逆にx軸とy軸を入れ替えて5次式近似を足しましたところカーブはピタリと乗ります。
数式は、y=-2.0887E-9^5+6.6981E-7x^4-7.3059E-5x^3+4.6719x^2-1.3980E-1x+1.6337とこのように出ます。ところがこのやり方ではx値を逆算で求める数式が存在しないようなのです。
このx,y入れj変えた5次式のx値が出る関数でもいいのですが・・・
どなたかご存知でしたらご教授お願いします。

A 回答 (4件)

既出回答でも指摘が寄せられていますが、理論的裏付けのない近似式が利用できるのは、基本あくまでも「内挿」です。


外にはみ出してどこまで使えるかは、近似曲線の書式設定のオプションで「補外」してみることで、ある程度(=カンジニアリングで)見て取ることはできます。
ご相談のデータから実際に行ってみると、例えば5次の近似ではYの値がまぁ130ぐらいまでが限度かなとか、小さい側は内挿でも既にあやしいといった具合です。
一方、仮にご相談のデータが「大きい方にはもう暫くは一様に増加していく」といった何らかの裏情報があれば、4次で止めておいた方が「もう少し外まで使える『かも』」しれません。
もっとも何を使ったところで理論式の裏付けが無い以上、ただの「数字遊び」に過ぎないのですけどね。


それからご相談者さんを含めて、グラフに書かせた「近似式」で実際に近似値を計算してみようとする方が大変多くいらっしゃいますが、それは絶対にやってはいけません。
近似式の妥当性云々より遥かに以前の問題として、係数の有効桁数不足でロクな近似値は計算できません。

多項式近似を計算する数式の組み方は既に回答しましたので、参考にしてください。
「Excelグラフの任意の数値出力について」の回答画像4
    • good
    • 0
この回答へのお礼

keithinさんありがとうございます。
たしかに近似式はExcelが勝手に選びだしたものなので一部分はあってても
他が合わない場合もありますよね
社内で検討した結果、間は補間で求める数式を組むことにしました。

お礼日時:2013/05/07 20:44

回答者No.1です。

補足です。

5次式近似のR自乗値が高いという回答者さんもいらっしゃいますが、xが11.375以上でどうかという保証は、ありません。

別の言い方をすれば、今回質問者さんが示された数値が物理的に意味のあるもので、xが11.375以上でも予測する必要がある場合は、5次式はおすすめできません。予測を大幅に逸脱します。
あくまでも、xが11.375以下でR自乗値が高いというだけです。

物理学的には指数的近似が最適と思われます。
    • good
    • 0

>必要なのは任意のx値の時のy値がでる関数



必要なのは確かに
y=f(x)
ですが、いまは逆算したx=g(y)のgが5次関数になっているという設定です。
つまりy=f(x)のfは5次関数の逆関数を実際に数式にしないと、計算は出来ないという事です。


#補足
x=g(y)を5次で近似した場合の適合度合い(R2)は0.999978216ですが、4次でも0.999957383とほとんど遜色ありません。4次関数での近似に留めて逆関数の数式を持ってきて、計算するというのも一つの方法です。
まぁそれを言うと二次で近似してもR2=0.999035157ですから、決して悪くはありません(ただし実際にグラフに書いてみると、アタマの方がちょっと浮いて見えるのは確かにイマイチっぽいですけど)。二次関数の解の公式なら流石に憶えてますよね。



閑話休題。
で。5次関数の逆関数の数式を自分で探してくるのは確かにメンドクサイので、実際に手早く答えを得る方法としては、エクセルに逆関数の値を探索させてしまいます。

準備:
A列にXの値を記入
B列にYの値を記入

今欲しいのはXからYを求めることですが、暫定的にYから5次の式でXを計算させます。
D1にYと記入
D2に暫定的に50を記入
E1にXと記入
E2に
=TREND(A2:A12,B2:B12^COLUMN(A2:E2),D2^COLUMN(A2:E2))
と記入、このE2が欲しい値になるD2が、欲しい答えです。


手順:
E2を選択
ご利用のエクセルのバージョンが不明ですが、データタブ(データメニュー)で「ゴールシーク」を開始
 数式入力セルはE2
 目標値はたとえば2を記入
 変化させるセルはD2
をそれぞれ指定してOKします。



#補足1
初期値(上述で暫定的にD2に50を記入したこと)によって、答えが間違える(あるいは探索できなくなる)場合があります。失敗した場合は初期値を変えて実行してください。


#補足2
より精度を必要とする場合は、ご利用のエクセルのバージョンに応じた方法でアドインとして「ソルバー」を追加し利用します。


#補足3
今回使用した一連の数式や方式は、古いエクセルではバグにより間違った答えになる可能性があります。少なくともエクセル2003以降をご利用ください。
「Excelグラフの任意の数値出力について」の回答画像2
    • good
    • 0

近似式の一致度はR自乗値が1.0に近ければ近いほど


一致しているという目安になりますが、
今回、エクセルに搭載されている近似式で一番近いのは
「累乗近似」になるようです。

結果は、
 y = 52.72x^0.329
 (R^2=0.99)

有効桁数が分かりませんでしたので、
有効桁=4桁で出しました。
実際にエクセル上でお試しください。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!