【例】如下图所示A为产品数量,B列是对应的单个产品成本。要求计算:当生产50个产品时,相对应的成本是多少?
方法1:使用TREND函数。
公式:
=TREND(OFFSET(B1,MATCH(D2,A:A)-1,,2),OFFSET(A1,MATCH(D2,A:A)-1,,2),D2)
公式说明:
Trend函数是做线性预测的函数,但本例中的A列和B列并非线性关系(y=ax+b)。所以需要分段插值。即在A列查找到相邻的小值和大值。如50为13~68。
MATCH(D2,A:A)-1:利用match函数的模糊查找功能,找到比样本小且最接近的值。如比50小的是13
OFFSET(B1,match()-1,,2):用offset返回小值和大值的所在B列区域。如50对应B列的是B5:B6,同理A列的区域A5:A6
D2:是样本值。本例是50
Trand函数预测的结果是:76.64
方法2:利用LINEST函数
公式:
=D2*INDEX(LINEST($B$2:$B$8,$A$2:$A$8),1)+INDEX(LINEST($B$2:$B$8,$A$2:$A$8),2)
LINEST():如果我们知道A列和B列对应的线型关系式(y=ax+b),那么我们可以直接把X值代入求值。而LINEST函数可以根据两组数据,直接取得a和b的值。如本例:LINEST($B$2:$B$8,$A$2:$A$8)可以返回{-0.05,85.97},其中-0.05是a,85.9是b。那么关系式出来: y=-0.05x+85.9
INDEX(linest(),1)可以取值第一个值,即a的值。同理当为2时可以取出b的值。
方法2预测的结果是:83.39(由于预测原理不同,结果和方法不相同是正常的)
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。