데이터분석 8

pandas.qcut, 구간 나누기, categorical 변수

데이터 분석을 하다보면 카테고리 변수를 다루는 일이 자주 있다. 예를 들어 동물의 크기에 따라 small, medium, large 세 경우로 나뉜다고 하였을 때, 이를 머신러닝에 활용하기 위해서는 이를 float이나 int 형으로 표현해주어야 한다. 이런 과정을 할때 보통 onehot-encoding을 사용한다. 그런데 만약 '나이'와 같은 변수를 카테고리 변수로 바꾸고 싶다면 어떻게 해야 할까? 당연히 판다스에는 이에 해당하는 적절한 메서드가 존재한다. https://pandas.pydata.org/docs/reference/api/pandas.qcut.html pandas.qcut — pandas 2.0.3 documentation Number of quantiles. 10 for deciles, ..

데이터분석 2023.08.21

scikit learn, GridSearchCV

데이터의 정제를 완료하면 모델을 통해 데이터를 학습하고 타겟 값을 예측한다. 머신러닝에 있어서 모델의 성능을 높이기 위해서 가장 중요한 작업은 데이터를 모델에 맞게 정제하는 과정이라고 생각한다. 그 다음으로는 모델의 파라미터 값을 조정하여 성능을 높이는 방법이 있다. 모델에 따라 수 많은 파라미터들이 존재하기 때문에, 사람이 모든 값을 하나씩 바꿔가며 실험하는 것은 많은 노력과 인력을 필요로 한다. 사이킷 런에서는 모델의 파라미터를 설정할 때, 사람이 일정 값을 설정해주면 모델이 그 조합들을 자동적으로 조합하여 실험을 실행시키는 메서드를 제공하는데 그것이 바로 GridSearchCV 이다. greedy 알고리즘은 최적해를 구하는 데에 사용되는 근사적인 방법으로, 여러 경우 중 하나를 결정해야 할 때마다 ..

데이터분석 2023.08.18

data handling, map, np.where

데이터를 다루다보면, 해당 컬럼을 변경하거나 변형해야할 때가 있다. 이때 유용한 map 과 np.where 을 소개하고자 한다. 1) map map 은 Series 형태인 데이터에 적용가능한 메서드이다. dataframe은 시리즈가 여러개 합쳐진 자료형이라고 생각하면 되는데, 그렇다면 dataframe에 map 메서드를 적용할 수 있다는 뜻이다. 예를들어 위와 같은 데이터가 df 라는 변수에 저장되어 있다고 생각해보자. diagnosis 는 M, B 두 가지 문자가 존재한다. 나는 M은 malignant, B는 benign 로 변경하고 싶다. 그렇다면 다음과 같은 코드를 실행하면 된다. class_mapping = {'M' : 'malignant', 'B' : 'benign'} df['diagnosis'..

데이터분석 2023.08.18

날짜 형식 데이터를 연, 월, 일로 변경하기

데이터를 다루다보면, 다음과 같은 데이터를 만날 때가 있다. 이런 형식의 데이터일 경우, 매번 습관적으로 연, 월, 일, 시 등으로 나누어 컬럼을 생성하여 데이터를 분석한다. 그렇다면 데이터를 왜 이러한 형식으로 변경하여 데이터 분석을 진행하는 것일까? 아래와 같은 장점이 존재하기 때문이다.(대부분 단점은 없는듯..?) 데이터 분석 및 시각화 : 연, 월, 일로 분리된 컬럼은 데이터를 시각화 할 때 더 쉽게 할 수 있도록 한다. 집계 및 그룹화 : 매월 판매량을 합산하거나 연간 통계를 생성할 때 유용하다. 시계열 데이터 분석: 연, 월, 일로 분리된 컬럼을 사용하면 시계열 패턴을 이해하고 예측하는 데 도움이 된다. 날짜 계산 및 조작 : 연, 월, 일로 분리된 컬럼을 사용하면 날짜와 관련된 계산 및 조직..

데이터분석 2023.08.10

[데이콘] Basic 풍력 발전량 예측 AI 경진대회 1, python

https://dacon.io/competitions/open/236066/overview/description 데이콘 Basic 풍력 발전량 예측 AI 경진대회 - DACON 분석시각화 대회 코드 공유 게시물은 내용 확인 후 좋아요(투표) 가능합니다. dacon.io Dataset Info. train.csv [파일] 19275개의 데이터 id : 샘플 별 고유 id temperature : 기온 (°C) pressure : 기압 (hPa) humidity : 습도 (%) wind_speed : 풍속 (m/s) wind_direction : 풍향 (degree) precipitation : 1시간 강수량 (mm) snowing : 눈 오는 상태 여부 (False, True) cloudiness : 흐림..

[Dacon] Basic 축구선수의 유망 여부 예측 AI 경진대회 1, python

대회 출처 링크 : https://dacon.io/competitions/official/236031/overview/description 데이콘 Basic 축구선수의 유망 여부 예측 AI 경진대회 - DACON 분석시각화 대회 코드 공유 게시물은 내용 확인 후 좋아요(투표) 가능합니다. dacon.io 밑바닥부터 시작하는 딥러닝.. 머신러닝 교과서를 공부 중인데, 하루에 한 두시간이라도 뭔가 해보면 좋을 것 같아서 하게 되었다. 예전에 캐글에서 타이타닉 데이터를 분석해보았을 때와 같이 이 데이터도 Classification 문제로 비슷하게 해볼 수 있을거 같아서 시도해보았다. [배경] 안녕하세요 데이커 여러분! 데이콘 Basic 축구선수의 유망 여부 예측 AI 경진대회에 오신 것을 환영합니다! 축구 선..

주피터 노트북 단축기 정리

코랩을 사용하다가 주피터 노트북을 사용하려고 하다보니.. 코랩과 환경이 조금 달라서 주피트 노트북을 사용하면서 필요한 유용한 단축기를 정리해보았다! Commend Mode Cell의 주요 단축키 A insert cell above R change cell to raw B insert cell below Shift-Enter run cell, select below X cut selected cells Ctrl-Enter run selected cells C copy selected cells Alt-Enter run cell and insert below Y change cell to code Ctrl-S Save and Checkpoint M change cell to markdwon Z undo ce..

데이터분석 2022.11.18

DataFrame, Join Type의 종류, python

판다스의 DataFrame은 테이블 형식의 데이터 셋이다. 각 DataFrame이 공통 컬럼(필드)가 존제 한다면, DataFrame 끼리 Join을 할 수 있다. Join의 방식에는 4가지가 존재한다. 1. Outer Join 2. Inner Join 3. Left Join 4. Right Join 각각의 방식을 예시 코드를 통해 어떻게 Join이 되는지 알아보자! import pandas as pd df1 = pd.DataFrame({'a' : ['a', 'b', 'c'],'b':[1, 2, 3]}) df2 = pd.DataFrame({'a' : ['a', 'b', 'd'],'c':['가', '나', '다']}) >> df1 = a b 0 a 1 1 b 2 2 c 3 >> df2 = a c 0 a 가..

데이터분석 2022.11.11