1. 하고 싶은 것
distortions = []
K = range(1,12)
for k in K:
kmeanModel = KMeans(n_clusters = k).fit(service1_s1[['data']])
kmeanModel.fit(service1_s1[['data']])
distortions.append(sum(np.min(cdist(service1_s1[['data']], kmeanModel.cluster_centers_, 'euclidean'), axis=1)) / service1_s1.shape[0])
이 코드에서,
k를 12까지 돌리고 & bold 해놓은 service1_s1의 마지막 숫자를 1부터 75까지로 바꾸고 싶음.
그러니까
service1_s1일 때 k가 1~12 일때의 값 찾기
service1_s2일 때 k가 1~12 일때의 값 찾기
...
를 하고 싶어
2. 구현 결과(오류)
아까 갤에 글 올렸는데 그냥 먼저 짜오라고 해서 짜봤는데... 너무 허접해 미안
distortions = []
K = range(1, 12)
for i in range(1, 75):
for k in K:
kmeanModel = KMeans(n_clusters = k).fit(service1_s[i][['data']])
kmeanModel.fit(service1_s[i][['data']])
distortions.append(sum(np.min(cdist(service1_s[i][['data']], kmeanModel.cluster_centers_, 'euclidean'), axis=1)) / service1_s[i].shape[0])
라고 무식하게 짰는데 당연히 안됨
오류는 IndexError: list index out of range 오류가 뜸...
이 경우에 어떻게 해야 할까? 검색 중인데 답이 없네...
짜오라고 한거는 신짜오 부른거아님?
쉬발 ㅜㅜ 알려주라