[플레이데이터 빅데이터 부트캠프]R 프로그래밍 - 데이터 조작(1)

빅데이터 분석에는 크게 분류, 군집, 회귀, 시계열 분석, 상관관계 분석 등 5개가 있다.

빅데이터 분석을 위한 데이터 조작을 실습해 보자.

엑셀로 데이터 불러오기

setwd("C:/Users/Playdata/Desktop/Playdata")

(x<-read.csv("score.csv",header=T)

데이터 프레임 행과 칼럼 합치기

rbind : 지정한 데이터들을 행으로 취급해 합친다.

> rbind(c(1,3,5,6),c(2,4,5,8))
     [,1] [,2] [,3] [,4]
[1,]    1    3    5    6
[2,]    2    4    5    8

cbind:지정한 데이터들을 칼럼으로 취급해 합친다.

> cbind(c(1,3,5,6),c(2,4,5,8))
     [,1] [,2]
[1,]    1    2
[2,]    3    4
[3,]    5    5
[4,]    6    8

apply 계열 함수

> x=matrix(1:10, ncol=2)
> 
> x
     [,1] [,2]
[1,]    1    6
[2,]    2    7
[3,]    3    8
[4,]    4    9
[5,]    5   10

행으로 합치기

> apply(x, 1 ,sum)
[1]  7  9 11 13 15

열으로 합치기

> apply(x, 2, sum)
[1] 15 40

여기서 1은 행, 2는 열을 의미한다.

lapply() : 결과를 리스트로 반환해 준다.

> lapply(mtcars[, 1:4], mean)
$mpg
[1] 20.09062

$cyl
[1] 6.1875

$disp
[1] 230.7219

$hp
[1] 146.6875

1에서 4열까지의 피쳐들의 평균값을 반환해 주었다.

sapply() : 결과를 벡터 또는 리스트로 반환해준다.(lapply 함수와 유사하다.)

>sapply mtcars[,1:4],mean)
mpg	       cyl		  disp	         hp
20.09062       6.18750        230.72188    146.68750

tapply() : 그룹별로 함수를 적용할 때 사용한다.

tapply(1:15, rep(1,15),sum)
1
120

tapply(1:15, 1:15 %% 2 ==0 ,sum)
FALSE  TRUE 
   64    56

마지막 코드는 홀수와 짝수를 그룹별로 묶어서 계산한 값을 나타내고 있다.

기타 함수

quantile()  : 수치형 자료의 분포의  사분위수를 나타낼 때 사용한다.

> quantile(mtcars$mpg)
    0%    25%    50%    75%   100% 
10.400 15.425 19.200 22.800 33.900

summary()  : 자료에 대한 간략한 통계 요약을 볼 때 사용한다.

summaryBy() : 원하는 칼럼의 값을 특정 조건에 따라 요약하는 목적으로 사용한다.