I have lists of points *X and Y*. *{1212,1216,1217,1219...}* *{1,2,3,4,5,6...}* I combine them to make a one table of points *t = Thread[{x, y}];* Using that table I build graphic: [![enter image description here][1]][1] So I need to find function/formula out of this table of point. So the best variant as I think is using *InterpolatingFunction[range, table]* and *InterpolatingPolynomial [data, var]*. But since we have huge amount of data the polynomial will be really huge (if I'm correct for n points, polynomial will be n-1). So if I understand correct it is not possible to use interpolation for it. Right? Therefore, we need to use regression to find approximated function, using *Fit[t, func, v];*. To make a better result, as I see, better divide graph in half, where it shifted to the right (near x=4000). And make two approximation graph instead of one. Since I'm not using Mathematica in daily use (it is my first time in this program), I need help. What function is best to use in *Fit[t,**func**,v]*? And how can I build two approximation functions for one graph? Do I need to divide the initial graph by my self? Are there other methods that I missed? [1]: https://i.sstatic.net/AYJja.png