• 締切済み

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

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

みんなの回答

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

出来ないならせめて「具体的なサンプルデータ」ぐらい出してください。 ついでに言うと「こういうサンプルデータを使って,アドバイスを見ながら自分ではこうやってみたんだけど,こうなってしまった。自分としてはこうあるべきだと考えているので,これではダメだった」とかの,具体的なあなたのやったことも。 「やったけど出来ませんでした」だけでは,やっぱりあなたが単にやり方をミスってるだけなのか,この方法で出来るけど何かもうちょっと工夫が必要なのか,それともあなたが言うように全く「別の方法でないと無理」なのか,何もお話し出来るネタがありません。これでは「ちゃんとやればきっと出来るからガンバってね」としか,フォローのしようが無いってことです。 #しかし無理だと思うなら,回答者は別に構いませんよ。お好きに違う方法を探してくださいとしか,答えようが無いじゃないですか。

omiyuri
質問者

お礼

keithinさま 大変ご無礼な返信をしてしまい申し訳ございませんでした. サンプルデータは下記のとおりです. このデータを使って計算した結果,a=-291.3,b=0.00039となりました. このa,bを元にy=a(1-2e^bx)よりyを求めた結果,下記データと大きくズレてしまいました. 入力ミスなどがないか何度か試みたのですが,結果が同じであったため別の方法でないとできないのでは?と思いあのような大変失礼な返信をしてしまいました. 恐縮ですが追加できるアドバイスがあればよろしくお願い致します. 20 30 60 90 120 179 240 310 360 430 480 540 600 630 740 720 900 820 1100 890 1300 960 1500 1020 1700 1060 1900 1090 2100 1110 2300 1130 2500 1150 2700 1160 2900 1170 3200 1180

omiyuri
質問者

補足

サンプルデータの区切りがなくなり繋がって表示されているようなので再度提示します. a, b 20, 30 60, 90 120, 179 240, 310 360, 430 480, 540 600, 630 740, 720 900, 820 1100, 890 1300, 960 1500, 1020 1700, 1060 1900, 1090 2100, 1110 2300, 1130 2500, 1150 2700, 1160 2900, 1170 3200, 1180

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

ふむ。。指数関数を使っていますがエクセルが計算できる指数近似式ではないので,ストレートに求める関数はありません。 方針: y-a = -2a*exp(bx) と変形して近似する 手順: ツールメニューのオプション(若しくはExcelのオプション)の計算方法で反復計算のチェックを入れる A1:A20にXの観測値 B1:B20にYの観測値 C1に =B1-$H$1 を記入し,C20までコピー G1にa,G2にbと記入 H1に =-INDEX(LOGEST(C1:C20,A1:A20,TRUE,TRUE),1,2)/2 H2に =LN(INDEX(LOGEST(C1:C20,A1:A20,TRUE,TRUE),1,1)) と式を入れるとa,bの近似値が得られる。 #C列,H列に#VALUEが並んでしまった場合はH1,H2を一回削除し,するとC列のエラーが消えるので改めてH1,H2に同じ式を入れ直すこと。

omiyuri
質問者

お礼

早々にご回答いただきながら,お礼が遅くなり失礼いたしました. ご回答いただいた式を参考に色々と試しましたが,上手く解を導くことができませんでした. 他の方法でないと無理なような気がします.

関連するQ&A