
この曲線の終点を計算しようとしています(図を参照)。曲線自体はシグモイド曲線でモデル化できます。これを自動的に計算する方法はありますか? 唯一見つかったのは変曲点ですが、それは必要な情報ではありません。
こんにちは@マルジョレーヌ 、
エンドセットの定義は個人的には詳しくありませんが、シグモイド曲線の直線傾きが漸近線と交差するXの値のことのようです。もしそうだとしたら、JMPでそれを自動的に実行できるとは思えません。
なお、参考までに、曲線の当てはめプラットフォームでシグモイド曲線を当てはめた後、シグモイド曲線の名前(ゴンペルツやロジスティックなど)の横にある赤いボタンをクリックし、「カスタム逆予測」を選択できます。これを行うと、複数のY値を入力すると、JMPはシグモイド関数を使用して逆関数の計算を行い、そのY値が出現するX値を決定します。これは必ずしも必要な機能ではないかもしれませんが、将来的には他の用途に役立つ可能性があります。
とはいえ、スクリプトを作成して「自動的に」問題を解決することは可能ですが、いくつかの手順が必要です。まず、 @ジェリーフィッシュによる、非線形データの区分的フィッティングについて解説した非常に役立つ一連の投稿(こちら)をご覧ください。この作業を何度も行う必要がある場合、自動化によって作業が簡素化され、非常に役立つでしょう。
一度だけの場合は、次の手順で手動で実行できます (JSL を使用して自動化することもできます)。
- まず、シグモイド曲線の線形近似に必要のないデータ ポイントを選択します。基本的には、漸近的な極値を無視しながら、変曲点の線をシグモイドの傾きに当てはめます。
- 新しい列を作成し、数式を指定します。入力する数式は、m*X+b のようになります。
- m は、数式ウィンドウで定義し、開始値を指定する必要があるパラメーターです。
- X は、シグモイド曲線をフィッティングするときに使用した X 回帰列です。
- b は、数式ウィンドウで定義し、開始値を指定する必要があるパラメーターです。
- 非線形適合プラットフォームに戻り、この新しい列の式を X 回帰子/予測子の式として使用します。
- Y 列にあるものを Y ロールにキャストし、[OK] をクリックしてから、新しいレポート ウィンドウで [Go] をクリックします。
これにより、曲線の漸近線部分を除いたデータポイント全体にわたる良好な線形近似が得られるはずです。レポートの下部には、mとbのパラメータ値が表示されており、それらを使用して、Y漸近線におけるX値が何であるかを逆算できます。
以下は私が実行した例のスクリーンショットです。この場合、Y漸近線は100、m = -0.255、b = 162.99なので、(100-162.99)/(-0.255) = 247です。つまり、私の例では、最終セットは247です。もちろん、JSLですべてをスクリプト化して、プログラムで「実行」をクリックした際に最終セットを出力するようにすることもできますが、それだけでは十分ではないかもしれません。繰り返しますが、これを何十回、何百回も実行する必要がある場合は、自動的に実行するコードを書く価値があるかもしれません。
これが役に立つことを願っています!
DS

ありがとうございます。確かに、終点は傾きと漸近線の交点です。少なくとも100回は計算する必要があるので、ご提案いただいたスクリプトを試してみます。
マルジョレーヌ