Error Numpy: Matriz Singular

¿Qué significa el error Numpy error: Matrix is singular significa Numpy error: Matrix is singular específicamente (cuando se usa la función linalg.solve )? He buscado en Google pero no pude encontrar nada que lo aclarara cuando se produce este error.

Una matriz singular es aquella que no es invertible. Esto significa que el sistema de ecuaciones que intenta resolver no tiene una solución única; linalg.solve no puede manejar esto.

Puede encontrar que linalg.lstsq proporciona una solución utilizable.

Esta función invierte matrices singulares y también usa numpy.linalg.lstsq :

 def inv(m): a, b = m.shape if a != b: raise ValueError("Only square matrices are invertible.") i = np.eye(a, a) return np.linalg.lstsq(m, i)[0]