如何用脚本计算出最符合的值?大家好!
如图: 有若干组数据、它们的数据比较接近。
每组数据有大、小两个值。
如何通过脚本来求出图中红色的水平线的最优值:
要求这个水平线与能这组数据最多的其中一个端点接近、要求这条线是水平的。

我试着用最小二乘法来回归、但还是不理想。
谢谢各位专家!
ScriptingWindows回复:如何用腳本計算出最符合的值?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);感謝專家!
回复:如何用腳本計算出最符合的值?嗨拉拉
我的理解是你需要一個值,需要為所有這個數據的組取值和1個這個範圍。
我的想法是因此是能力線,f(x)=b。換個就是方法取一個值b,讓b距離11個組最近的那個點的值的求和最小。
即,結果為b。那麼整體的函數就是求, Y=min(abs(y1max-b),(y1min-b))+min(abs(y2max-b),(y2min-b))+.. .min(abs(y11max-b),(y11min-b))。對Y求最小。
你可以嘗試整理這個函數然後求Y快時b的值,然後帶入函數f(x)=b。應該就可以了。
回复: 如何用脚本计算出最符合的值?非常感谢!
假如这样的数据超过一百组、也要这样编辑公式吗?
我还是没有想到好方法。
再次感谢!