使用VBA确定数据坡度更改的过渡点

使用VBA确定数据坡度更改的过渡点,vba,Vba,我想知道是否有办法解决这个问题 我之所以需要这样做,是因为对于数据的特定趋势,我需要使用特定的公式,对于数据的下一个趋势,我需要使用不同的公式 此外,数据并不简单,但有两个不同的斜率。(意思是当使用线性趋势r^2

我想知道是否有办法解决这个问题

我之所以需要这样做,是因为对于数据的特定趋势,我需要使用特定的公式,对于数据的下一个趋势,我需要使用不同的公式

此外,数据并不简单,但有两个不同的斜率。(意思是当使用线性趋势r^2<1时)

1。)将数据分成两半,比如在点编号n处。让我们调用点S1的前半部分和点S2的第二部分

2.)计算每一半的趋势线t1和t2

3.)计算S1与t1偏差的平方和加上S2与t2偏差的平方和。我们称之为D(n)

4.)现在对n的所有可能值重复此操作,并选择使D(n)最小的值

我不确定您是否可以使用Excel图表的内置趋势线函数进行此操作,但VBA可以通过编程方式访问线性回归的公式对象。

1。)将数据分为两半,比如在点编号n处。让我们调用点S1的前半部分和点S2的第二部分

2.)计算每一半的趋势线t1和t2

3.)计算S1与t1偏差的平方和加上S2与t2偏差的平方和。我们称之为D(n)

4.)现在对n的所有可能值重复此操作,并选择使D(n)最小的值


我不确定您是否可以使用Excel图表的内置趋势线函数进行此操作,但VBA可以通过编程方式访问线性回归的公式对象。

您的数据图片会很有帮助。因为此问题没有使用特定的主机应用程序(如Excel或access)进行标记我认为所有这些都应该在VBA中完成,所有数据都不是存储在单元格或表格中,而是存储在变量中。请向我们展示您目前拥有的代码,特别是用于存储数据的数据结构。所有数据点都在excel文件中。我还没有开始编写代码。我正在考虑使用excel单元格中的所有数据点。我还没有开始编写代码。我正在考虑使用(0,1,2,3,4)数据点,找到斜率,然后继续移动1(1,2,3,4,5),然后计算两个斜率的差值,以及它们的显著性。将转换点称为数据的图片会很有帮助。因为这个问题没有用特定的主机应用程序(如excel或access)标记,所以我认为所有这些都应该在VBA中完成,所有数据都存储在变量中,而不是存储在单元格或表格中。请向我们展示您目前拥有的代码,特别是用于存储数据的数据结构。所有数据点都在excel文件中。我还没有开始编写代码。我正在考虑使用excel单元格中的所有数据点。我还没有开始编写代码。我正在考虑使用(0,1,2,3,4)数据点,找到斜率,然后继续移动1(1,2,3,4,5),然后计算两个斜率的差值,以及它们的显著性。称之为转换点这听起来是个不错的方法!我会很快写出来的。谢谢这听起来是个好办法!我会很快写出来的。谢谢