ValueError: n_components=4 must be between 0 and min(n_samples, n_features)=2 with svd_solver='full'
ValueError: n_components=4 must be between 0 and min(n_samples, n_features)=2 with svd_solver='full'
我的代码出现这样的错误
for n, df_process in enumerate(all_df):
#Normalisasi data dengan metode Standard Scaler
scaler=StandardScaler()
scaler.fit(df_process)
scaled_data=scaler.transform(df_process)
#Menentukan jumlah komponen dalam PCA
if n == 0:
pca=PCA(n_components=total_faktor_positif, svd_solver='full')
else:
pca=PCA(n_components=total_faktor_negatif, svd_solver='full')
#Fitting PCA dari data yang sudah normalisasi
pca.fit(scaled_data)
#Dicari PCA dari data yang sudah normalisasi
x_pca=pca.transform(scaled_data)
factor = []
for pc in x_pca:
factor.append(np.argmax(pc))
all_factor.append(factor)
print (all_factor)
all_pca.append(x_pca)
聚类 dari hasil PCA yang sudah didapatkan
我该如何修复它们?请帮忙:(因为今天是我的论文
PCA
的n_components
必须小于min(n_samples, n_features)
。
在这种情况下,min(n_samples, n_features)=2
,所以n_components
只接受[0,2]之间的值,但你给它4
。
你可以试试:n_components=2
我的代码出现这样的错误
for n, df_process in enumerate(all_df):
#Normalisasi data dengan metode Standard Scaler
scaler=StandardScaler()
scaler.fit(df_process)
scaled_data=scaler.transform(df_process)
#Menentukan jumlah komponen dalam PCA
if n == 0:
pca=PCA(n_components=total_faktor_positif, svd_solver='full')
else:
pca=PCA(n_components=total_faktor_negatif, svd_solver='full')
#Fitting PCA dari data yang sudah normalisasi
pca.fit(scaled_data)
#Dicari PCA dari data yang sudah normalisasi
x_pca=pca.transform(scaled_data)
factor = []
for pc in x_pca:
factor.append(np.argmax(pc))
all_factor.append(factor)
print (all_factor)
all_pca.append(x_pca)
聚类 dari hasil PCA yang sudah didapatkan
我该如何修复它们?请帮忙:(因为今天是我的论文
PCA
的n_components
必须小于min(n_samples, n_features)
。
在这种情况下,min(n_samples, n_features)=2
,所以n_components
只接受[0,2]之间的值,但你给它4
。
你可以试试:n_components=2