I'm working with 3d coordinate data (x,y,z), however I know that the z coordinate is systematically wrong and the error of z is dependant on both x and y. I however do have some data where I know the correct z value so I want to make a model that can given the xyz coordinates give the correct z value, but I'm not sure what the best way of doing so is.
I tried using an SVM (support vector regressor) but it gives pretty bad results, I also tested k-nearest neighbor regressor and it works really well for the datapoints I have, however there are holes in the 3d space where I don't have data and I'm fairly certain the k-nearest neighbor regressor will not give correct result. I feel like there should exist a simple polynomial formula that solves the problem which is why I went for an SVM but is there any other simple method I can employ to do this correction? I feel like the problem should be solvable by a simple polynomial such as: $z_{correct} = c_0 + x*c_1 + x^2*c_2+ y*c_3 + y^2*c_4+ z*c_5 + z^2*c_6$, however I don't know what formula to use or the best way to find the constants, any suggestions would be greatly appreciated.