본문 바로가기

전체 글829

[태블로(Tableau)] Tabpy 연동하기 - Tabpy_2 과정 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 클러스터링의 경우에는 거리에따라 구분하느라 군집을 표.. 2022. 5. 6.
[crontab]Linux 스케줄링 crontab이 안될경우(+.py를 Crontab으로 스케줄링 걸어주기) - .py crontab 설정하기 - 리눅스에서 .py 파일을 만들고 해당 파일을 매일 정해진 시간마다 돌리고 싶었다. 근데 안됨 다 되는것 같고 에러 메시지도 안뜨는데 되지를 않음 그래서 찾아본 결과 아래 프로세스를 진행하니 잘된다. 1) 경로가 잘되어 있는지 확인해준다. 무조건 절대경로를 써준다 명령창에 pwd를 치면 현재 접속되에 있는 절대경로가 나오는데 그걸 그냥 통째로 복붙하면된다. 물론 .py내부에도 해당 pwd 경로를 써줘야한다. ex) 1) cd 실행하고자하는 .py로 이동 2) pwd 3) pwd에 나온 경로 /파이썬 파일.py 2) crontab 재시작을 했는가? 원래 명령어는 crontab restart인데, 변경된 명령어는 systemctl restart crond이다. 만약 당신이.. 2022. 5. 6.
[Tableau(태블로)]Tableau Server로 Dataframe 데이터 업로드하기 Tabpy도 그렇고 pantab도 그렇고 Tableau와 Python은 웬만하면 호환되는 경우가 많다. 이를 사용하여 .py파일을 만들어 스케줄링을 걸어주면 자동으로 데이터 원본을 업데이트하는 기능도 가능하다 이번엔 Python 코드를 사용하여 .CSV 파일 또는 Dataframe 형식의 대용량(2Gb)이상 데이터를 Tableau Server에 .hyper파일로 업로드해볼것이다.   1) CSV -> Hyper -> Server Upload import pandas as pdimport csvPATH_TO_CSV = "CSV파일의 경로.csv"CSV_DF = pd.read_csv(PATH_TO_CSV,na_filter=False) #na_filter는 NA 혹은 NAN이라 적혀있는 문자열을 유지해준다.. 2022. 5. 6.
[Tableau(태블로)]초를 시:분:초로 나타내기(how to change seconds to hh:nn:ss in Tableau) Tableau에서 초(sec)을 시:분:초로 표현하기 간혹가다 시간(초)로 나타낸것을 시:분:초로 나타내야할때가 있다. 예를들어 177초 같은경우, [1시간 = 3600초 / 1분 = 60초] 이므로 177sec = 00:02:57이라고 할 수 있다.(2분 57초) 이렇게 초(sec)의 데이터를 시:분:초 형태로 나타내 보자 1) 계산된 필드 (hh:mm:ss) 연속형 초(sec) -> 시(hour) == RIGHT('00'+STR(FLOOR(AVG([초(sec)데이터)/3600)),2) 초(sec) -> 분(minute) == RIGHT('00'+STR(FLOOR((AVG([초(sec)데이터)%3600)/60)),2) 초(sec) -> 초(sec) == RIGHT('00'+STR(FLOOR((AVG([.. 2022. 4. 25.
[Tableau]클릭 시 HighLight 표시 안되게 하기(Unabled click highlight) 태블로를 사용하다 보면 클라이언트의 요청에 따라 Interactive한 대시보드 표현을 위해 Action을 많이 활용하는 경우가 생긴다. 이때 버튼처럼 작동하는 시트를 만들어 대시보드상에 있는 해당 시트를 클릭하면, 특정 Action이 동작할수 있게 만들수 있다. 다만 버튼을 누른다고 클릭을 하면, 해당 시트의 객체(text나 image)가 highlight되어 아래와 같이 시각적으로 별로 좋아보이지 않는 경우가 있다. 간단한 Action을 사용하여 hightlight기능을 방지해보자. #1) 0,1 계산된 필드 만들기 각자 0과 1로 이루어진 계산된필드(불연속형)을 생성한다. ※ '0','1' 또는 'test','test1'등 원하는 방식으로 생성해도 된다. #2) #1)에서 만든 필드를 Detail(.. 2022. 4. 12.
[Tableau]Keep Percentage When filtered(전체기준 퍼센트 유지하기) 간혹가다, 전체값 기준으로 선택값의 퍼센트를 구하는 경우가 있다, ​하지만 기준이 되는 행/열을 필터링하면 아래와 같이 변경돼버린다. 보통 이렇게 생긴 전체 9,994 대비 각자의 Percentage는 위와같이 표기한다. 하지만 기준이 되는 값(Sub-Category)를 필터링하면 아래와 같이 변경돼버린다. 이처럼 필터를 적용해서 특정 값들을 제외하면, 각 퍼센트가 남은 값들을 기준으로 다시 계산해서 표기되는데 필터링을 해도 기존 퍼센트를 유지하는 방법에 대해 알아보자. *방법은 여러가지가 있으니 여러가지 테스트를 해보는것을 추천한다. 방법 1) Rank로 필터링하기(Top N) 1-1) 계산된 필드를 생성한다 Rank --> RANK(COUNT([Sub-Category])) 1-2) 생성된 Rank를 .. 2022. 4. 11.
[Python].ipynb to .py (Window, Linux) / convert .ipynb to .py Python 개발을 할때에는 보통 주피터 노트북이나, 코랙, Visual Studio를 많이 사용한다, 단순히 실행만 하는거면 상관이 없는데, 스케줄링을 걸어서 반복 실행한다던가 별도로 .py 파일이 필요한 경우 컨버팅이 필요하다, 이때 해당 파일을 컨버팅 하는 방법을 소개하겠다. 1) Window Jupyter Notebook 사용시 대충 이런 .ipynb파일이 있다고 하자, 보통 경로는 주피터 노트북이 설치된 위치이다. ("C:\Users\사용자명\.ipynb_checkpoints\") File > Download as > Python(.py) 좌상단 메뉴바의 File > Download as > Python(.py)를 눌러주면 인터넷에서 파일을 다운 받을때 저장되는 Download 폴더에 .py파일.. 2022. 4. 11.
[pantab]pantab으로 dataframe을 hyper로 변환하고 서버에 게시하자 pantab을 사용하면 간단하게 Pandas의 dataframe을 hyper 파일로 다운로드 받고 바로 서버에 게시할수 있다. #pantab 설치방법 !pip install pantab #pantab과 같이 깔아야할 라이브러리 tableauhyperapi 설치 #주의사항 : 현재 tableauhyperapi와 pantab의 버전 충돌 문제가 있다(2022_04_05기준) 0.0.14401로 설치하면 정상작동한다. !pip install tableauhyperapi==0.0.14401 #dataframe을 hyper 파일로 변경 + 저장하기 import pantab pantab.frame_to_hyper(hyper로 변경할 dataframe , "경로/파일명.hyper" , table = "본인이 원하는 .. 2022. 4. 5.
[Excel(엑셀)] 그림을 글자처럼 취급하는 방법(필터링, 일괄 수정) How to excel image filtering Excel 이미지를 텍스트처럼 관리하기 그림을 삽입하면, 필터링을 하거나, 셀의 크기를 조절할때 일괄 조정되지 않고, 일일히 조정을 해줘야하는 문제가 있다. 일반적으로 그림이 많이 없다면 상관 없지만, 산출물이나 그림을 많이 삽입해야하고, 수정이 잦은경우 스트레스가 될 수 있다. 이번엔 그림을 글자처럼 취급하여, 필터링 및 셀 크기 조절시에도 따로 수정없이 그림을 조작해보자. 방법은 간단하다. 1) 엑셀 >> 삽입 메뉴 >> 도형 >> 직사각형을 선택해준다. 2) 이미지를 삽입하고 싶은 셀에 Alt 키 + 마우스 드래그로 해당 셀을 덮어준다. (이때 여러 셀을 선택할수 있으니 이미지 크기에 따라 자유롭게 설정해준다.) 3) 삽입한 직사각형 도형을 선택 >> 우클릭 >> 도형 서식에 클릭한다. (만약, 엑.. 2022. 4. 1.