Kaggle with R
Page content
강의 홍보
- 취준생을 위한 강의를 제작하였습니다.
- 본 블로그를 통해서 강의를 수강하신 분은 게시글 제목과 링크를 수강하여 인프런 메시지를 통해 보내주시기를 바랍니다.
스타벅스 아이스 아메리카노를 선물
로 보내드리겠습니다.
- [비전공자 대환영] 제로베이스도 쉽게 입문하는 파이썬 데이터 분석 - 캐글입문기
개요
- R 입문부터 머신러닝까지 가르치게 되었다.
- 실제 Kaggle 대회 참여 독려를 위해 R에서
Kaggle
데이터를 불러와 머신러닝을 진행하는 것을 기획하였다. pins
패키지를 활용하면 보다 쉽게 할 수 있다.
(1) Kaggle API with R
- 먼저 [Kaggle]에 회원 가입을 한다.
- 회원 가입 진행 후, Kaggle에서 kaggle.json 파일을 다운로드 받는다.
- 그리고 아래와 같이
kaggle.json
을RStudio
에 등록한다.
# install.packages("pins")
library(pins)
board_register_kaggle(token = "your/path/folder/kaggle.json")
-
pins는 일종의
cache
를 이용한 자원 관리 패키지이다.- 원어: Pin remote resources into a local cache to work offline, improve speed and avoid recomputing; discover and share resources in local folders, ‘GitHub’, ‘Kaggle’ or ‘RStudio Connect’. Resources can be anything from ‘CSV’, ‘JSON’, or image files to arbitrary R objects.
-
이 패키지를 이용하면 보다 쉽게
kaggle
데이터를 불러올 수 있다.
(2) 데이터 불러오기
- 이제
titanic
데이터를 불러오자- 처음
kaggle
대회에 참여하는 사람들은 우선Join Competiton
버튼을 클릭한다.
- 처음
- 소스코드로 확인해본다.
pin_find("titanic", board="kaggle")
## # A tibble: 21 x 4
## name description type board
## <chr> <chr> <chr> <chr>
## 1 abhinavralhan/titanic titanic files kagg…
## 2 azeembootwala/titanic Titanic files kagg…
## 3 broaniki/titanic titanic files kagg…
## 4 c/titanic Titanic: Machine Learning fro… files kagg…
## 5 carlmcbrideellis/titanic-all-zero… Titanic all zeros csv file files kagg…
## 6 cities/titanic123 Titanic Dataset Analysis files kagg…
## 7 davorbudimir/titanic Titanic files kagg…
## 8 dushyantkhinchi/titanic-survival Titanic survival files kagg…
## 9 fossouodonald/titaniccsv Titanic csv files kagg…
## 10 harunshimanto/titanic-solution-a-… Titanic Solution: A Beginner'… files kagg…
## # … with 11 more rows
- 캐글에서 검색된
titanic
과 관련된 내용이 이렇게 있다.- 여기에서
competition
과 관련된 것은c/name_of_competition
이기 때문에c/titanic
을 입력하도록 한다. - (
pins
패키지를 활용해서 함수를 만들어 볼까 잠깐 생각)
- 여기에서
- 이번에는
pin_get()
함수를 활용하여 데이터를 불러온다.
pin_get("c/titanic")
## [1] "/Users/yourname/Library/Caches/pins/kaggle/titanic/gender_submission.csv"
## [2] "/Users/yourname/Library/Caches/pins/kaggle/titanic/test.csv"
## [3] "/Users/yourname/Library/Caches/pins/kaggle/titanic/train.csv"
- 출력된 경로에 이미 데이터가 다운받아진 것이다.
- 이제 데이터를 불러온다.
- 이 때,
pin_get
을 값을 임의의 변수dataset
으로 할당한 후 하나씩 불러오도록 한다.
- 이 때,
- note: 위 경로는
Mac
의 경로이기 때문에, 윈도우 또는 리눅스 경로는 다를 수 있음을 확인한다.- 따라서, 아래와 같이 작업하는 것을 권장한다.
dataset <- pin_get("c/titanic")
train <- read.csv(dataset[3])
test <- read.csv(dataset[2])
dim(train); dim(test)
## [1] 891 12
## [1] 418 11
- 데이터가 정상적으로 불러와진 것을 확인할 수 있다.
- 간단한 시각화, 데이터 가공 후, 모형 생성 및 제출까지 진행하도록 해본다.