dplyr 결과를 파일로 저장하기
library(dplyr)
Attaching package: ‘dplyr’ The following objects are masked from ‘package:stats’: filter, lag The following objects are masked from ‘package:base’: intersect, setdiff, setequal, union
데이터 불러오기
판매건수 데이터를 불러온다.
sales <- read.csv('sales.csv', stringsAsFactors = F,
fileEncoding = 'UTF-8')
head
를 이용해 불러온 데이터를 확인한다.
sales %>% head
시 구 성별 점포명 점포코드 연월일 판매건수 1 서울특별시 강남구 남 스탑버스 12AA02 20140101 103 2 서울특별시 강남구 여 키즈랜드 100101 20140101 309 3 서울특별시 강남구 여 키즈랜드 100101 20140101 365 4 서울특별시 강남구 남 스탑버스 12AA02 20140101 421 5 서울특별시 강남구 여 스탑버스 12AA02 20140101 413 6 서울특별시 강남구 남 키즈랜드 100101 20140101 428
문제
구 & 성별별로 평균판매건수 구하기
group_by
로 구와 성별을 묶고, summarise
로 평균판매건수 데이터를 요약한다. 결과를 실행하고 res
라는 변수에 저장하자.
res <- sales %>%
group_by(구, 성별) %>%
summarise(평균판매건수 = mean(판매건수))
write.csv
write.csv
를 이용해 파일을 res
에 저장해보자.
write.csv(res, 'res.csv')
read.csv
res.csv
를 불러오자. Fileencoding은 여러분의 컴퓨터는 윈도우도 있고 맥도 있고 환경이 다 다르니 쓰지 않아도 된다.
read.csv('res.csv', stringsAsFactors = F)
X 구 성별 평균판매건수 1 1 강남구 NA 254.9571 2 2 강남구 남 250.0133 3 3 강남구 여 250.4908 4 4 강동구 NA 247.9917 ...
res.new
에 불러온 파일을 저장하자.
res.new <- read.csv('res.csv', stringsAsFactors = F)
특이한 점
기존 데이터와 저장하고 난 후의 데이터의 차이점 res 같은 경우 앞에 구, 성별, 판매건수만 있는데, res.new(새로 불러온 데이터)는 X라는 행번호가 붙는다.
head(res.new)
X 구 성별 평균판매건수 1 1 강남구 NA 254.9571 2 2 강남구 남 250.0133 3 3 강남구 여 250.4908 4 4 강동구 NA 247.9917 5 5 강동구 남 248.4198 6 6 강동구 여 249.6779
head(res)
구 성별 평균판매건수 1 강남구 NA 254.9571 2 강남구 남 250.0133 3 강남구 여 250.4908 4 강동구 NA 247.9917 5 강동구 남 248.4198 6 강동구 여 249.6779
write.table
행 번호를 없앨 때는 write.csv
대신에 write.table
를 사용하고 row.names=F
옵션을 사용한다. csv는 comma separator이다. 데이터가 콤마로 구분 된다. Sep=',' 을 콤마로 해주고 저장을 하면 된다. 결과를 확인하면 콤마로 똑같이 구분이 되어있고 행 번호가 없어진 것을 알 수 있다.
write.table(res, 'res.csv', row.names = F, sep = ',')
파일 불러오기
위와 같은 방법으로 res.new
에 불러온 파일을 저장한 후 확인한다.
res.new <- read.csv('res.csv', stringsAsFactors = F)
head(res.new)
구 성별 평균판매건수 1 강남구 NA 254.9571 2 강남구 남 250.0133 3 강남구 여 250.4908 4 강동구 NA 247.9917 5 강동구 남 248.4198 6 강동구 여 249.6779