데이터 사이언스

데이터 사이언스

[Kaggle] ASHRAE - Great Energy Predictor III (2)

이전 포스트에서 데이터분석까지 살펴봤다. 이 포스트에서는 이제 KFold LigthGBM을 이용하여 Train하고 Prediction까지 해보겠다. 생각할 점 LightGBM이라는것을 이 대회를 통해 처음 들어봤는데 이에 대해 공부해 봐야 될것같다. 이 대회 같은 경우에 데이터가 매우 크다. 따라서 LightGBM을 사용하는 것으로 알고 있다. 문제는 데이터를 처리, train, prediction을 하는데 런타임 에러가 났다는 점이다. 필자는 총 4개의 커널을 살펴보았고 각 커널과 내가 공부한 내용을 바탕으로 작성할 때 데이터를 처리하거나 train 하는데 런타임 에러를 겪었고 결국에는 위에 첨부한 코드를 사용한 커널을 사용할 수 밖에 없었다. 런타임 에러를 겪지 않기 위해 데이터를 처리하는 과정에 대..

데이터 사이언스

[Kaggle] ASHRAE - Great Energy Predictor III (1)

지난 두달동안의 스터디에서 최종적으로 발표한 kaggle competition이다. kaggle에 내가 관심있는 게임, 여행과 관련된 대회가 별로 없는듯 했다. 또한, https://www.kaggle.com/getting-started/78482 에서 이 대회를 추천했다. 마침, 주제도 흥미롭고 있어보이고 재밌어보여서 했다. 하지말았어야 했다. 대회 소개 이 대회는 2016년 데이터를 모델링하여 17년 1월 ~ 18년 6월까지의 에너지 사용량을 예측하는 대회이다. 세계 각국의 100개가 넘는 건물에서 생성된 3년간의 Electricity/Chilledwater/Steam/Hotwater 영역에서의 사용량을 기반으로 모델링을 하는 대회이다. ※ ASHRAE : 미국 냉난방 공조 협회 (American S..

데이터 사이언스

[캐글] 자전거 수요량 예측을 위한 탐색적 데이터 분석

Evaluation¶분류와 회귀중 회귀와 관련 된 문제 => 자전거 대여량을 예측하는 문제이기 때문에 In [1]: import pandas as pd import numpy as np import matplotlib as mpl import matplotlib.pyplot as plt import matplotlib.font_manager as fm import seaborn as sns from scipy import stats # 노트북 안에 그래프를 그리기 위해 %matplotlib inline # 그래프에서 격자로 숫자 범위가 눈에 잘 띄도록 ggplot 스타일을 사용 plt.style.use('ggplot') # 그래프에서 마이너스 폰트 깨지는 문제에 대한 대처 mpl.rcPar..

데이터 사이언스

캐글 실습으로 배우는 데이터 사이언스 - Quiz 2

지도학습 : 정답이 있는 데이터를 활용해 데이터를 학습. 입력 값(X data)이 주어지면 입력값에 대한 Label(Y data)를 주어 학습시키며 대표적으로 분류, 회귀 문제가 있음 비지도학습 : 정답 라벨이 없는 데이터를 비슷한 특징끼리 군집화 하여 새로운 데이터에 대한 결과를 예측하는 방법을 비지도학습. 대표적으로는 Clustering이 있음. 강화학습 : 분류할 수 있는 데이터가 존재하는 것도 아니고 데이터가 있어도 정답이 따로 정해져 있지 않으며 자신이 한 행동에 대해 보상(reward)를 받으며 학습. 그 보상을 극대화하기 위해 노력함으로써 정답에 가까운 답을 찾아가는 것. 게임을 예시로 할때) 정해진 규칙이 알려지지 않은 게임 환경( Environment)에서 플레이어(Agent)가 현재 상..

데이터 사이언스

사이킷런으로 머신러닝 흐름을 알아보자

사이킷런은 파이썬 머신러닝 라이브러리 중 가장 많이 사용되는 라이브러리이다. classification : 대표적인 문제로는 타이타닉 문제. 탑승자가 살았는지 죽었는지를 판별해야 되기 때문 regression : 대표적인 문제로는 자전거 대여량 예측 문제. 특정 기후 상황이 주어졌을때 대여 수량을 예측해야되기 때문 지도학습 vs 비지도학습 => 레이블이 있느냐 없느냐 training dataset과 label를 가지고 모델을 만들고 만든 모델에 test data를 넣어서 예측하고, 그 예측한 값을 가지고 평가하는 과정이 큰 맥락임 소스코드 4줄만으로 예측한 카운트값을 도출할 수 있다. x_train은 행렬로 만들고, y_train은 벡터로 만든다. Random Forest를 알려면 Decision Tre..

데이터 사이언스

[캐글] 설문조사 분석 (4)

Data Science FAQ | https://www.kaggle.com/rounakbanik/data-science-faq Novice to Grandmaster | https://www.kaggle.com/ash316/novice-to-grandmaster -복잡한 코드 리뷰 형식으로 -더보기에 jupyter노트북으로 했던거 있음 Q12. 데이터 사이언티스트가 되기 위해 학위가 중요할까 import plotly.offline as py py.init_notebook_mode(connected=True) import plotly.figure_factory as fig_fact top_uni = mcq['UniversityImportance'].value_counts().head(5) top_uni_d..

데이터 사이언스

[캐글] 설문조사 분석 (3)

Data Science FAQ | https://www.kaggle.com/rounakbanik/data-science-faq Novice to Grandmaster | https://www.kaggle.com/ash316/novice-to-grandmaster -복잡한 코드 리뷰 형식으로 -더보기에 jupyter노트북으로 했던거 있음 Q8. 데이터 과학자의 평균 급여는 얼마나 될까? mcq['CompensationAmount'] = mcq[ 'CompensationAmount'].str.replace(',','') mcq['CompensationAmount'] = mcq[ 'CompensationAmount'].str.replace('-','') # 환율계산을 위한 정보 가져오기 rates = pd.r..

데이터 사이언스

[캐글] 설문조사 분석 (2)

Data Science FAQ | https://www.kaggle.com/rounakbanik/data-science-faq Novice to Grandmaster | https://www.kaggle.com/ash316/novice-to-grandmaster -복잡한 코드 리뷰 형식으로 -더보기에 jupyter노트북으로 했던거 있음 Q1. 파이썬과 R중 뭘 배워야 할까 data = mcq[(mcq['CurrentJobTitleSelect'].notnull()) & ( (mcq['LanguageRecommendationSelect'] == 'Python') | ( mcq['LanguageRecommendationSelect'] == 'R'))] print(data.shape) plt.figure(fig..

데이터 사이언스

[캐글] 설문조사 분석 (1)

Data Science FAQ | https://www.kaggle.com/rounakbanik/data-science-faq Novice to Grandmaster | https://www.kaggle.com/ash316/novice-to-grandmaster -복잡한 코드 리뷰 형식으로 -더보기에 jupyter노트북으로 했던거 있음 #missingno는 NaN 데이터들에 대해 시각화를 해준다. # NaN 데이터의 컬럼이 많아 아래 그래프만으로는 내용을 파악하기 어렵다. #pip install missingno 로 먼저 설치 import missingno as msno msno.matrix(mcq, figsize=(12,5)) 설문통계부분 #국가별 응답수 con_df = pd.DataFrame(mcq[..

데이터 사이언스

[파이썬으로 시작하는 데이터 사이언스] 퀴즈 4

reset_index : 인덱스를 다시 처음부터 재배열, 행인덱스 초기화 melt : 열을 행으로 모음(데이터 재구조화) groubby : 데이터 그룹화(재구성) pivot_table : 데이터 그룹화/ 행과 열의 위치 바꿈(데이터 재구조화) stack : 데이터프레임의 열을 행으로 옮겨줌 ?? 틀려서 다시 체크하긴 했는데 왜 맞는지 모르겠음 int를 빼야 맞음 a = b는 원본 데이터가 변하면 똑같이 변하는 얕은 복사인 반면, pandas.DataFrame.copy는 복사 당시의 데이터프레임 상태만 복사되는 깊은 복사 df_new = df.copy()로 해줘야함 밑에서 df를 사용하고 있기 때문 문제대로 한경우 고친경우 replace : 문자열 치환 split : 문자열 분리 rolling : 일정범위..

ankisile
'데이터 사이언스' 카테고리의 글 목록