본문 바로가기
R

[R.아르] R에서 피벗테이블 사용하기 dcast()

by LightBlogger 2016. 9. 23.

피벗테이블의 용도야 다양하겠지만


특히 두 가지 경우에 많이 쓰이는 것 같다.


1) 항목별 합산이 필요한데 countif와 sumif를 사용하기는 귀찮을 때



2) 한 항목은 행, 한 항목은 열로 삼아 펼쳐 보고 싶을 때



두 번째 것부터 먼저 알아보자.


먼저 x를 마련하고



reshape2 라이브러리를 불러온다.



피벗테이블 기능을 하는 함수는 dcast()다.


dcast(원 데이터, 행이 될 항목 ~ 열이 될 항목, 값으로 사용할 항목, 결과 형태) 와 같이 적어준다.


우리는 날짜를 행으로 삼고 상품을 열로 삼아 펼칠 것이므로


date ~ product


와 같이 써 주면 되겠다.


그리고 sales 열을 값으로 사용할 것이므로


value.var="sales" 


로 입력한다.



원하는 결과를 얻었다.


잠깐, 총합이 없잖아?


총합을 출력하고 싶다면 [margins=] 옵션을 사용한다.



합이 아니라 개수를 알고 싶을 때는


sum 대신 length를 사용한다.



이제 첫 번째 경우로 돌아가 보자.



위와 같이 두 개의 열만 존재하는 경우는 


product가 행이 되고 열로 펼칠 것은 별도로 존재하지 않는다.


존재하지 않을 때는 (.) 을 써 준다.


그러므로 다음과 같은 y에서는



product ~ .


과 같이 적어주면 되겠다.



반응형

댓글