Take the 2-minute tour ×
Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. It's 100% free, no registration required.

Is there any "algorithm" or steps to follow to get a formula from a table of values.

Example:

Using this values:

X                Result
1                3
2                5
3                7
4                9

I'd like to obtain:

Result = 2X+1

Edit

Maybe using excel?

Edit 2

Additional info:

It is not going to be always a polynomial and it may have several parameters (I think 2).

share|improve this question
    
Unless you have an assumed functional form, your problem is insoluble. –  J. M. Nov 23 '10 at 12:44
    
@J.M.: I thought so too - but then I found the tool mentioned below! –  vonjd Nov 23 '10 at 13:08

3 Answers 3

up vote 6 down vote accepted

The best tool for doing this is that very, very impressive piece of software:

http://ccsl.mae.cornell.edu/eureqa

Edit: For your abovementioned very easy example, even WA will find the right formula:

http://www.wolframalpha.com/input/?i=3,+5,+7,+9,...

share|improve this answer
1  
The "using building blocks" portion of the software is assuming a functional form (or a family of them as the case may be)... my point is that one cannot just pull a formula from his arse without insight on where the data came from! –  J. M. Nov 23 '10 at 13:12
    
@J.M.: Ok, now I understand what you mean - I agree with that! –  vonjd Nov 23 '10 at 13:14
1  
...and more or less, Wolfram Alpha/ Mathematica did exactly what I'm doing in my answer. InterpolatingPolynomial[] uses the Newton divided-difference formula in its implementation. –  J. M. Nov 23 '10 at 13:15
    
I didn't know that - interesting! Thank you –  vonjd Nov 23 '10 at 13:17

An easier method (assuming that the values were generated by a polynomial) would be to note that successive divided differences $\frac{y_{i+1}-y_i}{x_{i+1}-x_i}$ are constant and equal to 2; thus your function is of the form $y=2x+c$. The constant $c$ is then determined by replacing both $x$ and $y$ with appropriate values, and then solving for $c$.

share|improve this answer
    
+1: Didn't know that - interesting! Just found this reference: en.wikipedia.org/wiki/Divided_differences –  vonjd Nov 23 '10 at 13:20

One way to obtain the desired relationship is to use the regression analysis. In the case that you know what form of the relationship you are expecting, say you know that $f(x) = a * x + b$ it is very simple to find the parameters $a$ and $b$ (see for example). In the case that you don't know what form your formula may take, it is common to use the nonparametric regression techniques.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.