1.when you know that your measurements of X are uncertain,
or when you don’t want to focus on the errors of one variable over another.
2.the history of the ODR:
Orthogonal Distance Regression (ODR) is a method that can do this (orthogonal in this context means perpendicular –
so it calculates errors perpendicular to the line, rather than just ‘vertically’).
Unfortunately, it’s a lot more complicated to implement than standard linear regression,
but fortunately there is some lovely Fortran code called ODRPACK that does it for us.
Even more fortunately,
the lovely scipy people have wrapped this Fortran code in the scipy.odr Python module.