데이터는 아래와 같을 경우,
CUSTOMER_ID CAMPAIGN_ID
<chr> <chr>
1 cno0001 00010
2 cno0002 00010
3 cno0003 00010
4 cno0004 00010
5 cno0005 00011
6 cno0006 00011
7 cno0007 00012
8 cno0008 00012
9 cno0009 00012
1. 데이터 Import
library(readr)
dt <- read_csv(“R/파일명.csv”)
2. 분할 기준이 될 컬럼을 factor 데이터형으로 변경
dt$CAMPAIGN_ID <- as.factor(dt$CAMPAIGN_ID)
levels(dt_test$CAMPAIGN_ID)
## 변경 결과 확인
3. 분할 및 csv 저장
by(dt, dt[,c(“CAMPAIGN_ID”)], function(sub) {
fn <- paste0(‘캠페인번호-‘, sub$CAMPAIGN_ID[1], ‘.csv’)
write.csv(sub, fn, row.names=FALSE)
})
cf. 특정 컬럼만 저장하고 싶다면 다음과 같이 실행
write.csv(sub[c(1)], fn, row.names=FALSE)
})
→ 결과
캠페인번호-00010.csv
캠페인번호-00011.csv
캠페인번호-00012.csv