VBかエクセルでの指数近似のやり方について

このQ&Aのポイント
  • VBかエクセルでの指数近似のやり方について教えてください。指数近似の場合、定数aとbを求める方法や、サンプルデータの点数が変わっても対応する方法について知りたいです。
  • 指数近似曲線y=a*exp(bx)の定数aとbを求める方法について、Excelでは=INDEX(LINEST(LN(H2:H23),G2:G23),1)という式を使用します。しかし、サンプルデータの点数が変わると空白セルや0の部分が発生してしまいます。VBでの指数近似の方法や、点数の変更に対応する方法を教えてください。
  • VBかエクセルでの指数近似の方法について教えてください。具体的には、指数近似曲線y=a*exp(bx)の定数aとbを求める方法や、サンプルデータの点数が変わる場合の対応方法について教えてください。
回答を見る
  • ベストアンサー

VBかエクセルでの指数近似のやり方について教えてください.

VBかエクセルでの指数近似のやり方について教えてください. あるサンプルデータの指数近似をやろうと思っています.指数近似曲線y=a*exp(bx)の定数aとbを求めようと思っておりますが,同時にサンプルデータの点数も変更しながら計算しようと思っております.指数近似の場合,例えば定数bを算出するときエクセルでは =INDEX(LINEST(LN(H2:H23),G2:G23),1) と書いています.つまり近似する対象となるサンプルデータの点数が変わると指定範囲(H2:H23)に空白セルや0の部分が出来てしまいます.VBだとfor文でそれらを回避することが出来るのですが,今度はVBでの指数近似のやり方(プログラム)がわかりません. どなたか教えていただけないでしょうか?

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

  • ベストアンサー
回答No.1

最大H23まででいいのかなあ。 H2:H23の数値の個数をサンプルの点数として =SLOPE(LN(H2:INDEX(H2:H23,COUNT(H2:H23))),G2:INDEX(G2:G23,COUNT(H2:H23))) VBAならまだしも、VBはまったくわかりません。

0516kurage
質問者

お礼

回答ありがとうございます! とりあえず上記のエクセル関数でVBと連結してやってみます.

関連するQ&A

  • エクセルの関数より指数近似式を求める

    エクセルの関数を用いてy=a(1-2e^bx)の近似式から 定数a,bを求めたいのでご教授お願いいたします.

  • 実験データの指数近似曲線を求めたいのですが・・・

    今,修論の実験データを指数近似したいのですが, [ y=A*exp(Bx)+C ]の形で求めたいのです. EXCELではおそらく定数項Cが求められませんし, 僕が見つけたフリーソフトでは自然対数eが使われていません. こんな都合の良いソフトがあるでしょうか? それともEXCELのマクロ等をいじって実現できるでしょうか? もしご存知の方がいましたら是非教えて下さい!! 宜しくお願いします.

  • エクセルで1次近似をもとめたい

    エクセルで1次近似を求めたいので、調べたところ、 ヘルプにはLINEST関数がありました。そこで、 例にあった LINEST({1,9,5,7},{0,4,2,3}) をセルに入力したところ、答えはxの係数しか でてきません。定数項を取得する方法がわかるかた 教えてください。

  • EXCEL グラフ 指数近似式からxの値を求める

    EXCELのグラフ機能で得られる指数近似式 y=ae^bx で y=Aのときxを求める式はどうしたらよいでしょうか?

  • エクセルで近似曲線を上手く書けません。

    エクセルで近似曲線を上手く書けません。 メーカーに勤務している者ですが、表題の件で困っておりまして皆様のお知恵を拝借したく存じます。 電動機の性能表の電流値と効率値でカーブを書いて任意の電流値の時の効率値を算出する方法を、過去の質問記事をいろいろ参照して自分なりに満足行く物が出来たのですが、ひとつ数値を変えたら全然上手く書けなくなりました。何か間違っているのでしょうか? 作業的には各データA1:A5,B1:B5で散布図を書き、近似曲線追加で5次曲線と算式を表示させて、過去の質問記事であった算出方法でabcdefを求め任意のXよりYを求める様にしました。 満足出来た数値 電流値A 効率% A1:0  B1:0 A2:11.54 B2:85 A3:15.76 B3:89.5 A4:21.21 B4:89.9 A5:27.48 B5:89 近似曲線:y=ax5+bx4+cx3+dx2+ex+f a=INDEX(LINEST(A1:A5,B1:B5^{1,2,3,4,5}),1,1) b=INDEX(LINEST(A1:A5,B1:B5^{1,2,3,4,5}),1,2) c=INDEX(LINEST(A1:A5,B1:B5^{1,2,3,4,5}),1,3) d=INDEX(LINEST(A1:A5,B1:B5^{1,2,3,4,5}),1,4) e=INDEX(LINEST(A1:A5,B1:B5^{1,2,3,4,5}),1,5) f=INDEX(LINEST(A1:A5,B1:B5^{1,2,3,4,5}),1,6) 例えば、任意のX=30の時にY=88.632の答えが得られた。 曲線が変になった数値(A1を0から9.64に変えただけ) 電流値A 効率% A1:9.64 B1:0 A2:11.54 B2:85 A3:15.76 B3:89.5 A4:21.21 B4:89.9 A5:27.48 B5:89 例えば、任意のX=30の時にY=4979.69となる。 なんとかA1:9.64の時でもきれいな曲線が描けて、得られる答えがカーブの上に来るようにしたいです。 分かりにくい質問だとは思いますがよろしくお願い致します。 他の方法があればそれでも結構です。 以上、よろしくお願い致します。

  • Excelの近似曲線

    Excelでy=ax^3+bx^2+cx+dではなく、y=ax^3+bx^2のみで近似することはできますか? また、aとbが正になる近似を行うことはできますか?

  • エクセルの関数による近似式の求め方

    エクセル初級者です。こちらのHPに以下ような質問がありますが、近似曲線2次の多項式の切片=0とした、y=a*x^2+b*xの関数表示の方法をお教えいただけないでしょうか。元データのXに0、Yに0を追加し、この回答のようにしてみてもうまくいきません。 ご回答どうぞよろしくお願いします。 http://okwave.jp/qa/q2815553.html 『(1)1,2,3,4 (2)5,6,7,8 (1)と(2)の二つの数字があります。 (1)をx軸、(2)をy軸としてエクセルの関数の式のみでy=a*x^2+b*x+cを求める事は可能ですか? 現状は(1)(x軸)と(2)(y軸)からグラフを書き近似曲線を描かせ、2次の多項式を表示させているんですが、大量にデータがあり、この作業に大変時間を要しています。調べに調べた結果、y=a*x+bの形は関数で表示可能なことは確認取れているんですが、2次の式は未だ発見できません。 非常に困っています。回答の方よろしくお願いします。また何か不明な点があったら何でも言って下さい。』 それに対しての回答は以下の内容です。 『y の範囲 A2:A10 x の範囲 B2:B10 として、 C2=B2^2 C10までコピー。 と、しておけば 係数 a =INDEX(LINEST(A2:A10,B2:C10),1) 係数 b =INDEX(LINEST(A2:A10,B2:C10),2) 定数 c =INDEX(LINEST(A2:A10,B2:C10),3) 』

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

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

  • 指数関数による近似

    鉢植えの植物の、用土の乾燥の具合を数学的に計算してみようと思い立ち、こんなときは以前購入したバカ高い数学ソフトで・・と、久しぶりに起動してみようとしたら、WindowsXPには対応していないらしく。。(TT どうか、お知恵をお貸しくださいませ。。 y = A + B * exp( -k * x ) y : 用土の重量 A : 用土の乾燥重量 B : 水分の重量・初期値 x : 時間 k : 減衰係数 ( k >= 0 ) このような式で表せると仮定し x対yのサンプルを最小二乗近似して、式の定数 A, B, k を算出したいのです。 これを、Excelのリゾルバを使って求めることはできたのですが・・この代数的な計算方法、あるいは参考になるページをお教え頂けませんでしょうか? 如何せん、数学から遠ざかって久しいもので・・

  • Excelでのグラフの近似

    Excelでのグラフの近似についての質問です。 実験での結果についてfittingしたグラフを書きたいのですが、fittingの関数として f=A*exp(ax)+B*exp(bx)の形のグラフを自動で書けるようにはならないのでしょうか? 通常の近似の場合はf=A*exp(ax)の形になりますよね?この式を自分で定義したものに替えたいんです。 VBAなどを使っても構いませんので、どうかお知恵をお貸しください。

専門家に質問してみよう