일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- list
- Python
- analizer
- append()
- del
- nan
- sklearn
- matplotlib
- Dictionary
- string
- data
- function
- hierarchical_clustering
- IN
- elbow method
- insert()
- count()
- pandas
- numpy
- Machine Learning
- DataFrame
- 분류 결과표
- len()
- 반복문
- wcss
- 최솟값
- dendrogram
- 최댓값
- 덴드로그램
- DataAccess
- Today
- Total
목록sklearn (4)
개발공부

Hierachical Clustering 계층적 군집화 -계층적 트리 모형을 이용해 개별 개체들을 순차적, 계층적으로 유사한 개체 내지 그룹과 통합하여 군집화를 수행하는 알고리즘 - K-means Clustering과 달리 군집 수를 사전에 정하지 않아도 학습을 수행할 수 있다. - Dendrogram 이용 Dendrogram 덴드로그램 - 개체들이 결합되는 순서를 나타내는 트리형태의 구조 - 적절한 수준에서 트리를 자르면 전체 데이터를 몇개 군집으로 나눌 수 있게 된다. 예제 덴드로그램은 scipy 라이브러리를 이용해 그릴 수 있다. import scipy.cluster.hierarchy as sch plt.figure(figsize=(20,12)) # 전처리된 데이터 X에 대해 덴드로그램을 그리기 s..

sklearn 라이브러리가 제공하는 스케일러나 인코더에는 fit(), fit_transform(), transform() 함수가 있다. fit() 데이터를 학습시키는 함수이다. 주어진 데이터를 가지고 학습을 한다. transform() fit() 함수로 학습시킨것에 기반하여 변환하는 함수이다. fit_transform() fit()과 transform()을 모두 하는 함수이다. 해당 스케일러나 인코더로 학습을 시키고 바로 변환을 하는 함수이다.

이제 앞서 만들었던 데이터들을 Training용과 Test용으로 나눠보자. >>> from sklearn.model_selection import train_test_split # test_size는 0 ~ 1 으로 설정할 수 있고, test용 데이터의 비율을 설정할 수 있다. # random_state는 random.seed와 같은 역할 >>> X_train, X_test, y_train, y_test = train_test_split( X, y, test_size=0.2, random_state=3 ) >>> X_train array([[1. , 0. , 0. , 0.34782609, 0.28571429], [0. , 1. , 0. , 1. , 1. ], [0. , 0. , 1. , 0.4782608..

데이터 분리하기 #1 과 #2에서 우리는 X와 y를 구했다. 우리는 컴퓨터에게 학습을 시켜야 하기 때문에 숫자가 아닌 데이터중에, 카테고리컬 데이터로 판단되는 데이터는 숫자로 바꿔주는 작업이 필요하다. X의 Country와 y의 데이터가 카테고리컬 데이터인지 확인하고 이를 숫자로 바꿔주는 작업을 해보겠다. >>> X['Country'].nunique() 3 >>> sorted (X['Country'].unique()) ['France', 'Germany', 'Spain'] Country의 데이터들은 ['France', 'Germany', 'Spain']로만 이루어진 카테고리컬 데이터라는 것을 확인할 수 있다. 이를 숫자로 바꾸는 방법 두가지를 알아보자. 1. Label Encoding (레이블 인코딩) ..