0
私はPCAを行うためにsklearnを使用していますが、ダミーデータを使って関数をテストしています。ちょうど良い:PCAのコンポーネント数はサンプル数によって制限されます
from sklearn.decomposition import PCA
import numpy as np
features_training = np.random.rand(10,30)
components = 8
pca = PCA(n_components=int(components))
X_pca = pca.fit_transform(features_training)
私は10 * 8の行列を得る。
X_pca.shape
(10, 8)
しかし、同じデータに対して
、私は15個のコンポーネントを維持しようとしますfeatures_training = np.random.rand(10,30)
components = 15
pca = PCA(n_components=int(components))
X_pca = pca.fit_transform(features_training)
私は10 * 15行列を得ることはありませんが、10 * 10 1。
X_pca.shape
(10, 10)
したがって、コンポーネントの数は機能の数だけでなくサンプルの数によっても制限されているようです。何故ですか?