スクリプトを使用して最適な値を計算するにはどうすればよいですか?こんにちは、みんな!
図に示すように、いくつかのデータセットがあり、それらのデータは比較的近いものです。
データの各グループには、大と小の2つの値があります。
スクリプトを使用して、図の赤い水平線の最適値を見つける方法:
この水平線は、このグループで最も多くのデータを持つことができるエンドポイントの1つに近い必要があり、この線は水平である必要があります。

最小二乗法を使用して回帰しようとしましたが、それでも理想的ではありません。
専門家に感謝します!
スクリプティングウィンドウズ回复:如何用脚本计表最箱合的值?dt = Current Data Table();
m = Mean( dt[0, 2 :: 3] );
Column( "S" ) << Formula( If( Abs( H - m ) > Abs( L - m ), L, H ) );
dt << run formulas;
Column( "S" ) << deleteFormula;
ar = dt << GetAsMatrix( {4, 1} );
{Beta, VarBeta} = Least Squares Solve( ar[0, 1], ar[0, 2] );
x = round(Beta[1],0);専門家に感謝します!
回复:如何用脚本计表最箱合的值?こんにちはララ
我的喜是你需要一TL值、これら值得取值范围是所有数評価的アプローチ值到大值これを范围。
我的思路是既然是一根水平線、因4f(x)= b。
即、假設定、果是b。那么整体的関数数就是求、Y = min(abs(y1max-b)、(y1min-b))+ min(abs(y2max-b)、(y2min-b))+ .. .min(abs(y11max-b)、(y11min-b))。
你を尝试編成する
Re:スクリプトを使用して最適な値を計算する方法は?どうもありがとうございます!
そのようなデータのグループが100を超える場合、このように数式を編集する必要がありますか?
私はまだ良い方法を考えていません。
再度、感謝します!
回复:如何用脚本计表最箱合的值?x = Round( Beta[1] + 5 * Beta[2], 0 );