在Excel中,有一个很好的功能,如果你在三个连续的单元格中输入1,2,3,然后选择单元格并向下拖动,它会自动将其余的单元格填充为4,5,6,7等等它也能够匹配更多的模式。例如,如果我做了2,4,6,8,它会认出我正在添加2然后建议10,12,14等。
Excel如何知道哪些数字?他们是否硬编码不同的情况(即添加一些常数,减去一些常数,乘以某个常数)或者是否有一些算法可以自动为您预测? (这个问题应该与语言无关,但如果有帮助,我想在jQuery中这样做)
谢谢!
答案 0 :(得分:3)
我很确定这是一件简单的事情。当用户输入三个数字时,Excel可能会检查每个连续数字之间的差值。如果它们两次都相同,它将使用该增量来预测下一个数字。
答案 1 :(得分:1)
如果你想比Excel更普遍地做这个(只增加或减去常数值),从数值方法的角度看一些interpolation algorithms。 This wikibook article是一个很好的教程。
答案 2 :(得分:0)
在Excel中,它只适用于添加和减法(我知道,我只是尝试使用乘法,结果不遵循与原始相同的模式)。
知道这一点,我认为计算前两个细胞之间的差异很容易,然后检查细胞2和细胞3之间的差异,看它是否相同。然后,您可以将该转换应用于要预测的单元格。
*Example*
Cell1: 2
Cell2: 5
Cell3: 8
if(cell2 - cell1 == cell3 - cell2)
cell4 = cell3 + (cell2-cell1); //Cell4 will now be 11 since it increments by steps of 3
然后,您可以使用for循环将所需的值复制到所有选定的单元格(如果要使接下来的十个单元格遵循该模式,请使用for或while循环来更新这些单元格的值细胞)