There are a couple functions that promise to fit an arbitrary curve with error weighting. Most of those methods then give error estimates for the fit parameters.

There is one problem, though: When I double the errors on all data points, the error estimates for the fit parameters stay the same. The given error estimates are therefore only a measure of the fit to the data points excluding the errors. The errors I gave are merely used as relative weights.

This tests whether those methods increase the error estimates when the errors of the data points are increased. It seems that the newest version of SciPy does this, as well as the linfit library.

In my Monte Carlo work, I only use the bootstrap method for error estimates, so this does not have this problem to start with.