Stress attribute -- sklearn.manifold.MDS / Python

It is because current scikit-learn's implementation computes and returns raw Stress value (σr) while you are expecting Stress-1 (σ1).

The former is not very informative (its high value does not necessarily indicate bad fit), and a better way of communicating reliability is to calculate a normed stress, eg. Stress-1 that according to Kruskal (1964, p. 3) has more or less the following interpretation: value 0 indicates perfect fit, 0.025 excellent, 0.05 good, 0.1 fair and 0.2 poor.

I just implemented calculation of Stress-1 and sent PR. In the meantime one can use version from this branch, where Stress-1 is used and returned instead of raw Stress when normalize parameter is set to True (False by default).

For more information cf. Kruskal (1964, p. 8-9) or Borg and Groenen (2005, p. 41-43).