
pycaret 이란 파이썬에서 작동하는 AutoML 오픈소스입니다. 단순한 코드 몇 줄로 머신러닝 모델을 쉽게 구현할 수 있습니다. 빠르게 피처 엔지니어링, 모델 학습, 하이퍼파라미터 튜닝, 예측을 포함하는 전체 프로세스를 실행할 수 있습니다. 어디서부터 머신러닝 프로젝트를 시작해야할지, 어떤 모델부터 구현해볼지 잘 모르겠을 때 pycaret을 이용해보면 좋을 것 같습니다. 🏭 AutoML 자동화된 머신러닝으로, 머신러닝 및 딥러닝 모델을 구축할 때 분석가는 AutoML에 학습 데이터만 제공하고 최적화된 모델을 제공받을 수 있다. (출처: https://www.itworld.co.kr/news/129362) 0) 설치 및 데이터 로드 !pip install pycaret 설치 후 사용할 라이브러리들을 불..

파이썬으로 코딩을 할 때 다른 폴더나 파일에 대한 경로 접근이 필요할 때가 있습니다. 본 포스트에서는 파이썬 작업 시에 os.path 모듈을 이용해 파일 경로 및 디렉토리를 다루는 방법에 대해 알아보겠습니다. import os 1. 현재 작업 폴더 확인하기 os.getcwd() 2. 작업 폴더 변경하기 os.chdir('변경할 디렉토리 경로') 작업 폴더를 변경한 후, 다시 os.getcwd()를 이용해 작업 폴더를 확인해보면 경로가 변경된 것을 확인할 수 있습니다. 3. 특정 경로에 대해 절대경로 얻기 절대 경로란, 최초 디렉토리를 기준으로 경유한 경로를 모두 기입한 전체 경로를 의미합니다. 상대 경로는 절대 경로와는 다르게 최초 디렉토리가 아닌 특정 경로를 기준으로 경로를 기입하는 방식입니다. 주로 ..

본 포스트에서는 PyYAML 라이브러리를 이용해 파이썬에서 yaml 파일을 다루는 방법에 대해 알아보겠습니다. YAML(YAML Ain't Makeup Language)은 사람이 읽을 수 있는 데이터 직렬화 언어로, 데이터가 저장되거나 전송되는 환경설정 파일이나 어플리케이션에서 주로 사용됩니다. 유사한 목적으로 사용되는 XML, JSON과의 비교는 아래 사이트에서 확인해보면 좋을 것 같습니다. https://www.inflearn.com/questions/16184 yaml파일 이란 무엇인가요 - 인프런 | 질문 & 답변 안녕하세요 강사님 너무 질문이 많아서 죄송합니다. yaml파일 이라는 단어를 요 근래 많이 듣고 있는데 정확인 무슨 파일인가요 검색해 보지도 않고 무조건 질문을 드리는것 같아서 죄송하지..

seaborn 1) 다양한 시각화 함수에 이어 2) 커스터마이징편입니다. 시각화를 수행할 때 자주 사용하는 커스터마이징 세팅 들을 소개하겠습니다! seaborn은 matplotlib를 기반으로 시각화를 수행하는 패키지라고 했었죠. matplotlib의 함수를 사용하면 쉽게 원하는 그림을 그릴 수 있답니다. 사용하는 데이터는 이전과 동일하니, 이전 포스트를 참고해주세요. 사용하는 패키지는 pandas, seaborn, matplotlib입니다. import pandas as pd import seaborn as sns import matplotlib.pyplot as plt 1. 그림 크기 변경하기 figure 함수의 figsize 파라미터를 변경하여 그림의 사이즈를 조절합니다. 튜플로 (가로 사이즈, 세..

seaborn은 파이썬 시각화의 대표 주자로, matplotlib를 기반으로 작동하는 패키지입니다. 데이터 분석을 하다보면 숫자만으로는 데이터를 파악하기 어려울 때가 있죠. 시각화는 분석가가 데이터를 이해하기 위해서, 더 나아가 데이터를 기반으로 상대를 설득하기 위해서 반드시 알아야할 기술입니다. 미적 감각이 갖춰져있다면 더 예쁘고 요약이 잘 된 그림을 그릴 수 있겠지만..😓 많은 분석가들에게 그런 스킬은 어렵기 때문에 seaborn의 도움을 많이 받고 있습니다. 데이터가 저장된 판다스 데이터프레임 객체를 쉽게 시각화할 수 있으니, 사용하지 않을 이유가 더욱 없죠. seaborn 1편에서는 seaborn에서 제공하는 다양한 시각화 함수(displot, scatterplot, regplot, countpl..

데이터 분석을 하다보면 파이썬에서 판다스 데이터프레임의 칼럼을 변경해야 하는 경우가 가끔 있습니다. 본 포스트에서는 칼럼 이름을 변경하는 방법에 대해 알아보겠습니다. 먼저 사용할 임의의 데이터프레임을 생성하겠습니다. import pandas as pd df = pd.DataFrame({'id': ['a', 'b', 'c'], 'date': ['20211030', '20211031', '20211031'], 'price': [1000, 2000, 2500]}) display(df) 칼럼명을 변경하는 방법은 크게 세 가지입니다. rename 메서드를 이용하는 방법, set_axis 메서드를 이용하는 방법, columns 어트리뷰트에 직접 할당하는 방법이 있는데요 하나씩 알아보겠습니다! 1. rename 메서..

머신러닝에서 분류 문제를 다룰 때 가장 먼저 데이터의 분포를 확인하죠. 타겟이 두가지 범주를 갖는지(-> binary classification), 세 개 이상의 범주를 갖는지(-> multi-class classification), 하나의 데이터가 여러가지 범주를 동시에 가질 수도 있는지(-> multi-label classification) 살펴봅니다. 그리고 각 범주가 전체의 몇 퍼센트를 차지하고 있는지 비율을 살펴봅니다. 전체 자산 중에 부동산이 50%이고 주식이 30%, 그리고 현금이 20%를 차지한다! 이런 식으로요. 각 범주의 비율이 균일하게 나올 수도 있지만, 현실의 많은 데이터들은 불균형한 비율을 갖고 있습니다. 예를 들어 회원들에게 쿠폰을 주는 앱푸시를 보냈는데 그 알람을 누른 회원은 ..
제가 매일 까먹어서 작성합니다... 본 포스팅에서는 numpy의 서브모듈인 random을 이용하여 난수를 생성하는 방법을 알아보겠습니다. random은 난수를 발생시키는 모듈로 randint, hoice, randint, uniform 등의 메서드를 내장하고 있습니다. 아래 코드를 통해 로드한 후 사용하는데, 기본 모듈인 random과 혼동되지 않도록 주의하세요. from numpy import random 난수(亂數, Random Number)란 정의된 범위 내에서 무작위로 추출된 수를 일컫는다. 난수는 누구라도 그 다음에 나올 값을 확신할 수 없어야 한다. (출처: 위키백과) 1. seed 시드 설정을 할 때마다 동일한 숫자 세트가 나타나 코드 디버깅과 같은 작업을 할 때 유용하게 사용할 수 있습니다..

학생들의 시험점수를 이용해 등수를 매길 때, 고객이 가장 필요로 할 것 같은 상품의 우선순위를 따질 때 등 순위를 생성해야하는 상황은 다양합니다.. 본 포스트에서는 데이터프레임에 저장된 변수를 이용해 순위를 생성하는 방법을 알아보겠습니다. 사용할 데이터는 다음과 같습니다. import pandas as np import numpy as np sample = pd.DataFrame({'id': ['A', 'B', 'C', 'D', 'E'] , 'time_spend_company': [4, 3, 4, 4, 3] , 'satisfaction_level': [0.89, 0.89, 0.74, 0.67, 0.72]}) display(sample) 1. rank 함수 이용하기 rank 함수는 주어진 값들을 이용하여 ..

데이터 분석을 하다보면 필요에 따라 기존에 구성되어 있는 데이터를 재구조화하기도 합니다. 본 포스팅에서는 파이썬에서 데이터프레임을 재구성하는 방법, 특히 wide하게 구성되어 있는 데이터를 long하게 변경하는 방법에 대해 알아보겠습니다. wide 데이터는 가로로 놓여진 데이터를, long 데이터는 세로로 늘어놓인 데이터라는 것을 이해하고 읽으시면 좋겠습니다. 사용할 데이터는 다음과 같습니다. import pandas as pd df = pd.DataFrame({"id" : ['a', 'b', 'c'], "pred1" : [0.5, 0.6, 0.8], "pred2" : [0.8, 0.6, 0.4], "pred3" : [0.2, 0.7, 0.5]}) display(df) unique한 아이디마다 세 종류의..