在Excel中提取预测数据

时间:2016-09-19 11:00:03

标签: excel excel-vba excel-formula vba

当我们向图表添加趋势线时,Excel提供了一个在图表中显示趋势线方程的选项。 然后我们可以使用这些公式来计算给定x值的预测y值 SpreadSheetPage.Com

很好地列出了formulea

我想在excel表中为数据集实现相同的内容,如下所示:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<body>
<form id="test">
<h4>Gender</h4>
  <input type="radio" name="gender" value="male"> Male<br>
  <input type="radio" name="gender" value="female"> Female<br>
  <h4>Occupation</h4>
  <input type="radio" name="occupation" value="PvtJob">Pvt. Job<br>
  <input type="radio" name="occupation" value="Govt">Govt. Employee<br>
  <h4>Loan Type</h4>
  <input type="radio" name="loan" value="Personal">Personal Loan<br>
  <input type="radio" name="loan" value="Health">Health Loan<br><br>
<button class="btn btn-primary pull-right place-order-button" name="submit" value="submit" onclick="return myFunction()" type="submit" >Finish</button>
</form>
</body>

如您所见,我想使用二阶多项式预测1996年至2000年的值。

使用SpreadSheetPage.Com

提供的等式

二阶多项式趋势线

Year Value
1990  400
1991  494
1992  449
1993  554
1994  600
1995  499
1996
1997
1998
1999
2000

我计算了C2并将单元格中存储的值称为C2。 类似地,我计算了C1并将值存储在一个单元格地址为C1的单元格中。我还计算了b并将值存储在一个单元格地址为C3的单元格中。

然后,在1996年以后的单元格中(我想要投射的值),我输入了formulea =(c2 * x ^ 2)+(c1 * x ^ 1)+ C3和Ctr + Shift + Entered for数组formulea同时选择了1996-2000的值单元格。

结果与预期不符。我确信我没有以正确的方式使用这些方程式。在这方面的任何帮助将受到高度赞赏。

请不要分别为已知的x和已知的y制作命名数组x和y。

1 个答案:

答案 0 :(得分:1)

鉴于您未提供实际或预期结果的限制: 假设您的已知表格是A1:B7,并且您的范围按照您提到的名称命名:

B8:  = (C$2 * A8^2) + (C$1 * A8 ^1) + C$3

并填写B12

enter image description here

使用其他功能,您可以使用:

B8: =TREND(y,x^{1,2},A8:A12^{1,2})

然后选择B8:B12并输入ctrl+shift+enter数组。请注意,此功能在2007年之前的Excel版本中可能不准确。

修改 请注意,如果我们将A8替换为A8:A12,则可以将原始公式输入为数组;如果TREND作为单个单元格而不是范围输入,则new_x功能可以正常输入并填写。