Loading...
2021. 10. 6. 17:55

[샌프란시스코 범죄 분류] - 2

지난 글에서 위경도에 따른 분포를 산점도 그래프를 통해 시각화해보았다. 마지막으로 Dates 칼럼을 확인해보고 피처 엔지니어링, 모델 구축까지 진행해볼 것이다. EDA 날짜 데이터를 다룰 때는 데이터의 유형을 반드시 파악해야 한다. # Dates 확인 train_df['Dates'].dtypes 데이터 타입에서 O는 Object를 의미하며, 문자열 데이터로 저장된 것을 확인할 수 있다. 이러한 데이터를 다룰 때는 문자열을 날짜 데이터로 변환해야 한다. # 날짜 데이터로 변환 train_df['Dates'] = pd.to_datetime(train_df['Dates']) train_df['Dates'].sample(1) 데이터를 변환한 뒤 샘플로 1개의 데이터를 출력해 보면 날짜 데이터로 변환된 것을 확인..

2021. 10. 5. 19:52

[샌프란시스코 범죄 분류] - 1

이번 시간에는 캐글 대회 샌프란시스코 범죄 분류에 대해서 진행해 볼 것이다. 이 대회는 총 39개의 범죄 유형을 예측해야 한다. 즉 다중 분류(Multi-Class Classification) 문제이다. 데이터는 아래의 링크에 있다. https://www.kaggle.com/c/sf-crime San Francisco Crime Classification | Kaggle www.kaggle.com 데이터 불러오기 데이터를 불러오자. import pandas as pd train = pd.read_csv('train.csv') test = pd.read_csv('test.csv') train.shape, test.shape 데이터는 약 88만 개 정도이고 Test 데이터의 개수가 Train 데이터의 개수보..

2021. 10. 4. 19:34

[진짜 재난 뉴스 판별기] - 2

지난 글에 진짜 재난 뉴스 판별기 시각화까지 진행했다. 이번 글에서는 본격적으로 판별하기 위한 피처 엔지니어링을 진행할 것이다. 피처 엔지니어링 데이터 전처리를 진행할 것이다. 먼저 결측치가 있는지 확인해보자. def check_na(data): isnull_na = (data.isnull().sum() / len(data)) * 100 data_na = isnull_na.drop(isnull_na[isnull_na == 0].index).sort_values(ascending = False) missing_data = pd.DataFrame({'Missing Ratio' : data_na, 'Data Type' : data.dtypes[data_na.index]}) print('결측치 데이터 칼럼과 건..

2021. 10. 1. 17:57

[진짜 재난 뉴스 판별기] - 1

지도 학습의 기법인 분류(Classification)는 실제 비즈니스에서 매우 자주 사용되는 머신러닝 알고리즘의 하나이다. 주어진 데이터를 기반으로 새로운 범주형 클래스를 예측하는 기법이다. 예를 들면 고객의 이탈 유무 판별, 신용 카드 연체 유무 판별, 스팸 이메일 감지, 암 진단 유무 등 다양한 곳에서 활용이 가능하다. 분류의 종류에는 이진 분류(Binary Classification), 다중 분류(Multiclass Classification)가 존재한다. 다중 분류의 가장 대표적인 예는 IRIS 데이터의 종 분류이다. 이번 글에서는 캐글 대회인 트위터 진짜 재난 뉴스 판별기 만들기를 진행해 볼 것이다. 비정형 데이터인 만큼 텍스트 마이닝이 필요하다. 데이터 불러오기 먼저 데이터는 아래의 링크에 있..

2021. 9. 10. 19:35

[자전거 수요 예측] - 1

Edwith 강의를 통해 [캐글 실습으로 배우는 데이터 사이언스] 강의를 들었다. 교육 과정에 자전거 수요 예측 강의를 듣고 캐글 실습을 시작하게 되었다. 기초로 진행하기엔 좋은 데이터 분석이라 생각하여 직접 캐글로 진행해보았다. 데이터셋은 아래의 링크에 있다. https://www.kaggle.com/c/bike-sharing-demand Bike Sharing Demand | Kaggle www.kaggle.com 1. 모듈 불러오기 import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns from scipy import stats import matplotlib as mpl %matplotl..

2021. 9. 9. 19:07

[타이타닉 생존자 분류] - 2

저번 시간에 타이타닉 데이터셋으로 EDA까지 진행해보았다. 오늘은 로지스틱 회귀 모델을 이용해 생존자 분류 모델을 만들어보고 성능을 평가해 볼 것이다. 분류 : 생존자 분류 모델 만들기 분류 모델을 위해 전처리하기 학습 데이터셋을 만들기 위해 전처리를 진행할 것이다. 먼저, age와 embark 피처의 결측치를 채워야 한다. age의 결측치는 평균값, embark의 결측치는 최빈값으로 대체할 것이다. 그리고 각 피처의 계산할 수 없는 값들을 처리하기 위해 원-핫 인코딩을 진행할 것이다. # age의 결측값을 평균값으로 대체 replace_mean = df_train[df_train['age'] > 0]['age'].mean() df_train['age'] = df_train['age'].fillna(re..

2021. 9. 8. 17:03

[타이타닉 생존자 분류] - 1

타이타닉 데이터를 가지고 데이터 분석을 진행해보려고 한다. 타이타닉 데이터는 데이터 분석이나 머신러닝, 캐글에 대해 알고 있다면 여러 번 들어봤을 법한 입문자용 데이터셋이다. 이 데이터를 가지고 공부한다면 데이터 분석의 전반적인 지식을 쌓는데 많은 도움이 될 것이라고 생각한다. 탐색 : 타이타닉 데이터 살펴보기 pclass : Passenger Class, 승객 등급 survived : 생존 여부(생존은 1, 아닌 경우는 0) name : 승객 이름 sex : 승객 성별 age : 승객 나이 sibsp : 동승한 형제 또는 배우자 수 parch : 동승한 부모 또는 자녀 수 ticket : 티켓 번호 fare : 승객 지불 요금 cabin : 선실 이름 embarked : 승선항 (C = 쉘 부르크, Q..