Вместо этого вы могли бы использовать следующее (если мы хотим сохранить 95% отклонения в данных, измените число по своему усмотрению):
from sklearn.decomposition import PCA
pca = PCA(n_components = 0.95)
reduced = pca.fit_transform(X)
Если я упускаю суть, дайте мне знать, где я не подключаюсь, я постараюсь помочь.