본문 바로가기

Research & Analysis/R

[R] 큰 데이터를 읽을 때 습관 들이기: 클래스를 미리 알자 (read.table)

read.table은 R에서 데이터를 불러올 때 자주 쓰는 함수인데, 큰 데이터를 무턱대고 불러온다면 한참동안 로딩을 해야 한다.

이는 여러 가지 이유가 있는데, ?read.table 을 통해 도움말을 한번 읽는 것이 그 이유를 이해하는데 큰 도움이 된다.


간단하지만 효율적인 팁으로, 데이터의 일부분을 불러와 각 변수의 class를 정하는 것인데, 모든 데이터를 분석해 class를 정하는 것과 비교해 class가 정해져있을 때 데이터를 로드하는 속도가 월등히 빠르기 때문이다. 

아래의 코드를 보면서 적용해보자.



class_table <- read.table("data.txt", nrows = 100)

classes <- sapply(class_table, class)

big_table <- read.table("data.txt", colClasses = classes)