과정
1) Tabpy 서버 실행하기
2) Tabpy 서버 실행 후 태블로에서 해당 서버와 연동해주기
3) 원하는 Python 코드를 Script_XXX() 내장함수로 실행하기
4) 결과들을 가지고 데이터 시각화 하기
사용할 데이터 셋 (Iris()) from sklearn.datasets import load_iris
사용할 분석기법 DBSCAN(밀도 기반 클러스터링) -> from sklearn.cluster import DBSCAN
DBSCAN이란?
eps=거리값, min_samples=n값
eps만큼의 반경안에 n개의 값으로 이루어진 군집을 의미한다.
쉽게 말하면 그래프상에 찍혀있는 여러개의 점들이 모여있는 정도에 따라 구분해놓은것
k-means 클러스터링의 경우에는 거리에따라 구분하느라 군집을 표현할때는 DBSCAN이 더 좋은것 같다.(주관)
1. 일단 Jupyter Notebook을 기준으로 실행하겠다.
pip install tabpy
1-1) 설치 후 콘솔창에 >tabpy를 실행하면 서버가 자동으로 실행된다.
1-2) 인터넷 주소창에 아래와 같이 쳐주면 실행된 서버의 기본 페이지가 출력된다. (localhost:9004)
1-3) 서버가 실행되어 있는 상태에서 별도로 콘솔창을 실행해주고 아래 실행문을 실행해준다.
>tabpy-deploy-models
1-4) localhost:9004을 다시 실행해주면 아래와 같이 되어있을 것이다.
이제 Tabpy 서버 실행은 완료되었다(태블로에서 해당 모델들을 사용코자 한다면 서버를 유지해줘야한다.)
2) Tabpy의 실행방법은 2가지가 있다.
방법1) Python을 사용해서 모델을 생성 > 학습 > 학습이 완료된 모델을 함수 형태로 Tabpy 서버에 업로드(Deployed Models) > 태블로에서 실행
방법2) 서버는 그냥 실행만 시켜놓고 Script_XXX()를 사용해서 모델링부터 전부 실행하기
요약 : 방법1==미리 모델링하기 , 방법2==모델링부터하기
이번엔 방법1을 기반으로 해볼것이다(이유 : 모델링은 보통 태블로 담당자가 아니라 데이터 모델러가 하는일이라, 이미 완성되어있는 모델링이 있을것이다 == 학습하는데 소요되는 시간을 최소화 할수있다.)
1줄 요약 : 빅데이터(1억건 이상)에 대한 모델의 학습에 걸리는 시간이 매우 크므로, 태블로에서 바로 실행하는 방법2는 부적절하다.
2-1) Python 코드
import pandas as pd
from sklearn.datasets import load_iris
iris = load_iris()
labels = pd.DataFrame(iris.target)
labels.columns=['labels']
data = pd.DataFrame(iris.data)
data.columns=['Sepal length','Sepal width','Petal length','Petal width']
data = pd.concat([data,labels],axis=1
'Tableau 흡수내용' 카테고리의 다른 글
[Tableau(태블로)]탄소중립을 위한 기후기술 정보 시각화 대시보드 -1 (0) | 2022.05.31 |
---|---|
[Tableau(태블로)]Sub-Total/소계 원하는 부분만 표시하기 (0) | 2022.05.30 |
[Tableau(태블로)]Tableau Server로 Dataframe 데이터 업로드하기 (0) | 2022.05.06 |
[Tableau(태블로)]초를 시:분:초로 나타내기(how to change seconds to hh:nn:ss in Tableau) (0) | 2022.04.25 |
[Tableau]클릭 시 HighLight 표시 안되게 하기(Unabled click highlight) (0) | 2022.04.12 |