Анализ главных компонентов в Python

Я хотел бы использовать анализ главных компонентов (PCA) для уменьшения размерности. У numpy или scipy он уже есть, или мне нужно использовать собственный numpy.linalg.eigh? Я не просто хочу использовать разложение по сингулярным значениям (SVD), потому что мои входные данные довольно многомерны (~...