It's for python beginners.
If you run the code that reads csv containing 2011 image data and divides the results into 1000 first half and 1011 second half of PCA and outputs them to the graph,
IndexError: index2 is out of bounds for axis1 with size2
I was scolded.If you know how to deal with the error, please let me know.
import numpy as np
from sklearn.cluster importKEANS
from sklearn.decomposition import PCA
import matplotlib.pyplot asplt
import pandas aspd
users=np.loadtxt('/home/srl/mimamori1/b1/bb1.csv', delimiter=",")
model=KMeans(n_clusters=2).fit(users)
pca=PCA(n_components=2)
users_r=pca.fit_transform(users)
plt.figure()
ccode=[1]*1000+[2]*1011
plt.scatter(users_r[:,1],users_r[:,2],c=ccode)
plt.xlabel('pc1')
plt.ylabel('pc2')
print('contribution rate for each dimension: {0}'.format(pca.expanded_variance_ratio_))
print('Cumulative contribution: {0}'.format(sum(pca.expanded_variance_ratio_)))
plt.show()
Python's index is 0 (unlike matlab), so
users_r[:,1],users_r[:,2]
users_r[:,0],users_r[:,1]
Please fix it to .
© 2024 OneMinuteCode. All rights reserved.