1. Subject

요약

모델링 아이디어


2. Data

데이터 탐색 및 전처리

분류 컬럼 한글 명 NA 처리 기준
Basic 총 유동인구 수 골목별 평균으로 대체
Basic 총 직장인구 수 0으로 대체(관련 컬럼이 모두 NA인 경우 조사되지 않은 것으로 추정)
Basic 총 상주인구 수 0으로 대체(관련 컬럼이 모두 NA인 경우 조사되지 않은 것으로 추정)
Basic 월 평균 소득금액 골목별 평균으로 대체
Basic 지출 총금액 골목별 평균으로 대체
Basic 집객시설 수 14년도 : 골목별 15년 1월 데이터로 대체, 15년도 이후 : 골목별 평균으로 대체
Basic 총 가구 수 14년도 : 골목별 15년 데이터로 대체, 15년도 이후 : 골목별 평균으로 대체
Basic 전년도 매출 금액 NA제거
Basic 전년도 매출 건수 NA제거
Basic 전년도 점포수 NA제거

분석 시나리오

유의미한 분석 결과를 얻기 위해 전체 데이터셋에 대한 분석 외에 다양한 시나리오를 구성하여 분석. 점포당 매출액에 따른 1) 업종(외식업, 서비스업, 도소매업)의 영향력 2) 전년대비 매출 그룹화 3) 주요상권(마포, 강남, 관악)의 영향력을 보고 남자매출 비율 , 주말매출 비율을 설명변수에 추가하여 살펴봄

변수 정의

Basic 변수 단위 정의 Scaling
점포당 매출 금액 당월 매출금액을 점포수로 나눈 금액 자연로그
총 유동인구 수 골목상권의 유동인구 log10
총 직장인구 수 골목상권에 위치한 회사에서 근무하는 인구 log10
총 상주인구 수 골목상권에 주거지를 둔 인구 log10
당월 매출 건수 골목상권에 해당하는 상점의 거래건수 log10
월 평균 소득 금액 상주인구의 월 평균 소득 log10
집객시설 수 골목상권 상점 수 없음
남성매출액 비율 % 당월 해당 골목상권의 총 매출액 중 남성이 해당하는 비율 없음
주말매출액 비율 % 당월 해당 골목상권의 총 매출액 중 주말이 해당하는 비율 없음

3. Result

전체자료 분위별 변수 영향력 분석

총유동인구수: 상위 50%(0.0528) 대비 상위 10%(0.0551)일 때 1.04배 영향
총직장인구수: 상위 50%(0.0171) 대비 상위 10%(0.018)일 때 1.05배 영향
총상주인구수: 상위 50%(-0.0065) 대비 상위 10%(-0.0139)일 때 2.14배 영향
월평균소득: 월소득 늘어나면 상위 50%일 때 매출 감소 상위 10%일 때 매출 증가
집객시설 : 집객시설수가 늘어나면 상위 50%일 때 매출 증가 상위 10%일 때 매출 감소
남자매출액비율: 남자매출이 늘어나면 상위 50%일 때 매출 증가 상위 10%일 때 매출 감소
주말매출액비율: 주말매출이 늘어나면 상위 50%일 때 매출 증가 상위 10%일 때 매출 감소

업종별 분석

총유동인구수: 외식업과 서비스업은 상위 50% 대비 상위10%일 때 매출액 상승에 더 큰 영향력 있지만 도소매업은 영향력 줄어듬.

총직장인구수: 외식업매출은 다른 업종에 비해 매출상승에 더 큰 영향력을 받고 상위 50% 대비 상위 10%일도 더 많이 받음.

총상주인구수: 매출감소에 영향을 주며 특히 서비스 업종에서 상위 10% 매출감소에 영향력이 큼

월평균 소득: 서비스 업과 도소매 업에서 월평균 소득금액이 증가하면상위 50% 매출이 감소 하지만 상위 10% 매출이 증가

집객시설수 : 서비스업과 도소매업에서 집객시설수가 증가하면 상위 50% 매출이 증가 하지만 상위 10% 매출이 감소

남자매출액 : 외식업과 서비스업에서 남자매출액비가 증가하면 상위 50% 매출이 증가 하지만 상위 10% 매출이 감소, 도소매업은 남성매출액 비율은 상위 50% 대비 상위 10%일때 영향력이 감소.

주말매출액 : 외식업의 경우 주말매출액비가 증가하면 상위 10% 매출 증가에 더 큰 영향력을 주지만 서비스업과 도소매업의 경우 상위 50% 매출이 증가 하지만 상위 10% 매출이 감소


활용방안

  • 총직장인구수 : 외식업에 영향력이 큰 것으로 나타남(ex: 직장인구 많은 지역은 도소매업이나 서비스업 보다는 외식업 창업 추천)

  • 남자매출액 : 외식업, 서비스업의 경우 상위 10% 매출에서 남자매출이 전체 매출에 감소시키는 경향을 보여줌(ex : 매출이 큰 식당이나 미용관련 서비스업종에서는 여자를 타겟으로 하는 메뉴나 서비스에 집중하는 것을 고려)

  • 주말매출액:외식업은 주말매출이 전체 매출 증가시키는 경향을 나타냄(ex: 주말 가족을 위한 메뉴 개발, 서비스업과 도소매업은 주중 프로모션 개발)


전년대비 매출 그룹별 분석

총유동인구수: 매출상승 그룹에서는 총유동인구수가 매출액에 영향력 있는 변수이고 상위 50%대비 상위 10% 일때 2.64배 영향.

총직장인구수: 매출상승 그룹에서는 총직장인구수가 매출액상승에 영향력 있는 변수이고 상위 50%대비 상위 10% 일때 4.12배 영향.

총상주인구수: 매출상승 그룹에서는 총상주인구수가 매출액감소에 영향력 있는 변수이고 상위 50%대비 상위 10% 일때 1.69배 영향.

월평균소득: 매출상승 그룹에서는 월평균소득이 매출액증가에 영향력 있는 변수이고 상위 50%대비 상위 10% 일때 3.3배 영향.

집객시설수: 매출상승 그룹에서는 집객시설수가 매출액감소에 영향력 있는 변수이고 상위 50%대비 상위 10% 일때 2.23배 영향.

남자매출액 : 매출하락과 매출유지 그룹에서 남자매출액비가 늘어나면 매출도 상승하지만 매출상승 그룹에서는 남자매출액비가 늘어나면 매출은 감소하고 남성매출액 비율은 상위 50%대비 상위 10% 일때 3.97배 영향

주말매출액 : 매출하락 그룹의 경우 주말매출액비가 증가하면 매출 증가 하지만 매출유지과 매출상승 그룹의 경우 매출이 감소


활용방안

  • 월평균소득 : 뜨는 골목상권에 영향력이 크고 상위 10%에서 그 영향력이 더 크게 나타남(ex: 월평균소득 많은 지역은 중고자동차, 학원, 병원, 고급레스토랑과 같이 매출액 단위가 큰 업종 추천 )

  • 남자매출액 : 뜨는 골목상권은 상위 10% 매출에서 남자매출이 전체 매출에 감소시키는 경향을 보여줌(ex : 매출이 큰 식당이나 미용관련 서비스업종에서는 여자를 타겟으로 하는 메뉴나 서비스에 집중하는 것을 고려)

  • 주말매출액:뜨는 골목상권은 주말매출이 전체 매출 감소시키는 경향을 나타냄(ex: 주중 고객을 타겟으로 하는 서비스 검토)


주요상권별 분석

총유동인구수: 마포상권은총유동인구수가 매출액에 영향력 있는 변수이고 상위 50%대비 상위 10% 일때 3.08배 영향.

총직장인구수: 강남상권은 총직장인구수가 매출액상승에 영향력 있는 변수이고 상위 50%대비 상위 10% 일때 2.19배 영향.

총상주인구수: 강남상권은 총상주인구수가 매출액감소에 영향력 있는 변수이고 상위 50%대비 상위 10% 일때 1.88배 영향

월평균소득: 월소득 늘어나면 상위 50%일 때 매출 감소 상위 10%일 때 매출 증가

집객시설수: 집객시설수 늘어나면 상위 50%일 때 매출 증가 상위 10%일 때 매출 감소

남자매출액 : 남자매출액비가 늘어나면 강남상권 상위 10%와 마포상권 상위10%에서는 매출 감소

주말매출액 : 관악상권 상위 10%의 경우 주말매출액비가 증가하면 매출


활용방안

  • 총유동인구수 : 총유동인구수는 영향력이 크고 강남상권과 마포상권상위 10%에서 그 영향력이 더 크게 나타남(ex: 강남구와 마포구는 유동인구를 늘리기 위해 버스정류장, 지하철역을 늘리는 부분 검토 )

  • 총상주인구수 : 총상주인구수가 증가할 수록 매출 감소하는 것을 알 수 있음.(ex : 강남, 마포, 관악 모두 새로운 아파트 건설보다는 상업지구 활성화 방안 검토)

  • 남자매출액:강남상권과 마포상권은 남자매출이 전체 매출 감소시키는 경향을 나타냄(ex: 여성 고객을 타겟으로 하는 서비스 검토)



Appendix

1. 전처리 코드

setwd(“/mnt/Data”) getwd() install.packages(“dplyr”) library(dplyr) merged_final=file1_2015_NO_NA3

function_NO_NA3_delete <- function( arg1 ) { merged_final =arg1 ### 특이 Row 필터링 # 월_평균_소득_금액, 지출_총금액 (row 삭 제) merged_final <- filter(merged_final,!(is.na(merged_final\(월_평균_소득_금액) | is.na(merged_final\)지출_총금액)))

#집객시설_수 (0을으로 대체 ) for (k in c(49)){ merged_final[,k][is.na(merged_final[,k])] <- 0 } return=merged_final }

function_NO_NA3_gagu <- function( arg1,arg2) {

merged_final =arg1 merged_final2 =arg2 #for (k in c(28:45)){ # merged_final[,k][is.na(merged_final[,k])] <- 0 #} # # size=nrow(merged_final) for (m in c(46)){ l=1 for(l in c(1:size)){ if(merged_final[l,m]==‘NA’ || is.na(merged_final[l,m])){ # print(m) # print(l) merged_final[l,m]=mean(merged_final2[,m][merged_final2\(상권_코드==merged_final\)상권_코드[l]],na.rm=TRUE) # print(merged_final[l,m]) } } } return=merged_final }

file1_2013_NO_NA3 <- read.csv(‘file1_2013_NO_NA3.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,‘’),fileEncoding=“euc-kr”) file1_2014_NO_NA3 <- read.csv(’file1_2014_NO_NA3.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,‘’)) file1_2015_NO_NA3 <- read.csv(’file1_2015_NO_NA3.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,‘’)) file1_2016_NO_NA3 <- read.csv(’file1_2016_NO_NA3.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,‘’)) file1_2017_NO_NA3 <- read.csv(’file1_2017_NO_NA3.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,’’))

file1_2014_NO_NA3_delete=function_NO_NA3_delete(file1_2014_NO_NA3) file1_2015_NO_NA3_delete=function_NO_NA3_delete(file1_2015_NO_NA3) file1_2016_NO_NA3_delete=function_NO_NA3_delete(file1_2016_NO_NA3) file1_2017_NO_NA3_delete=function_NO_NA3_delete(file1_2017_NO_NA3)

file1_2015_NO_NA3_delete=function_NO_NA3_gagu(file1_2015_NO_NA3,file1_2016_NO_NA3)

colSums(is.na(file1_2014_NO_NA3_delete)) colSums(is.na(file1_2015_NO_NA3_delete)) colSums(is.na(file1_2016_NO_NA3_delete)) colSums(is.na(file1_2017_NO_NA3_delete))

getwd()

write.csv(file1_2014_NO_NA3_delete, paste0(“file1_2014_NO_NA3_delete.csv”), row.names = F,fileEncoding=“euc-kr”) write.csv(file1_2015_NO_NA3_delete, paste0(“file1_2015_NO_NA3_delete.csv”), row.names = F,fileEncoding=“euc-kr”) write.csv(file1_2016_NO_NA3_delete, paste0(“file1_2016_NO_NA3_delete.csv”), row.names = F,fileEncoding=“euc-kr”) write.csv(file1_2017_NO_NA3_delete, paste0(“file1_2017_NO_NA3_delete.csv”), row.names = F,fileEncoding=“euc-kr”)

file1_2014_NO_NA_test <- read.csv(‘file1_2014_NO_NA3_delete.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,’’))

추가 컬럼 작업

1 year befor 매출액

function_NO_NA3_yearbefore <- function(arg1,arg2) { data_set2=arg1 data_set1=arg2 size=nrow(data_set1) yearbefore=data.frame(rep(1,size)) for(i in c(1:size)){ if(any((data_set2\(상권_코드 == data_set1\)상권_코드[i])&(data_set2\(서비스_업종_코드 == data_set1\)서비스_업종_코드[i])&(data_set2\(기준_년월_코드==data_set1\)기준_년월_코드[i]-100))){ yearbefore[i,1] = data_set2\(당월_매출_금액[(data_set2\)상권_코드 == data_set1\(상권_코드[i])&(data_set2\)서비스_업종_코드 == data_set1\(서비스_업종_코드[i])&(data_set2\)기준_년월_코드==data_set1$기준_년월_코드[i]-100)] print(yearbefore[i,1]) } else { yearbefore[i,1] = NA print(yearbefore[i,1]) } } return=yearbefore }

file1_2014_NO_NA3_delete_yearbefore=function_NO_NA3_yearbefore(file1_2013_NO_NA3,file1_2014_NO_NA3_delete) file1_2015_NO_NA3_delete_yearbefore=function_NO_NA3_yearbefore(file1_2014_NO_NA3_delete,file1_2015_NO_NA3_delete) file1_2016_NO_NA3_delete_yearbefore=function_NO_NA3_yearbefore(file1_2015_NO_NA3_delete,file1_2016_NO_NA3_delete) file1_2017_NO_NA3_delete_yearbefore=function_NO_NA3_yearbefore(file1_2016_NO_NA3_delete,file1_2017_NO_NA3_delete)

cbind

colnames(file1_2014_NO_NA3_delete_yearbefore)=‘yearbefore’ colnames(file1_2015_NO_NA3_delete_yearbefore)=‘yearbefore’ colnames(file1_2016_NO_NA3_delete_yearbefore)=‘yearbefore’ colnames(file1_2017_NO_NA3_delete_yearbefore)=‘yearbefore’

colnames(file1_2014_NO_NA3_delete_yearbefore_jumpo)=‘yearbefore_jumpo’ colnames(file1_2015_NO_NA3_delete_yearbefore_jumpo)=‘yearbefore_jumpo’ colnames(file1_2016_NO_NA3_delete_yearbefore_jumpo)=‘yearbefore_jumpo’ colnames(file1_2017_NO_NA3_delete_yearbefore_jumpo)=‘yearbefore_jumpo’

colnames(file1_2014_NO_NA3_delete_yearbefore_cnt)=‘yearbefore_cnt’ colnames(file1_2015_NO_NA3_delete_yearbefore_cnt)=‘yearbefore_cnt’ colnames(file1_2016_NO_NA3_delete_yearbefore_cnt)=‘yearbefore_cnt’ colnames(file1_2017_NO_NA3_delete_yearbefore_cnt)=‘yearbefore_cnt’

file1_2014_NO_NA3_delete_yearbefore_bind=cbind(file1_2014_NO_NA3_delete,file1_2014_NO_NA3_delete_yearbefore) file1_2015_NO_NA3_delete_yearbefore_bind=cbind(file1_2015_NO_NA3_delete,file1_2015_NO_NA3_delete_yearbefore) file1_2016_NO_NA3_delete_yearbefore_bind=cbind(file1_2016_NO_NA3_delete,file1_2016_NO_NA3_delete_yearbefore) file1_2017_NO_NA3_delete_yearbefore_bind=cbind(file1_2017_NO_NA3_delete,file1_2017_NO_NA3_delete_yearbefore)

file1_2014_NO_NA3_delete_yearbefore_jumpo_bind=cbind(file1_2014_NO_NA3_delete_yearbefore_bind,file1_2014_NO_NA3_delete_yearbefore_jumpo) file1_2015_NO_NA3_delete_yearbefore_jumpo_bind=cbind(file1_2015_NO_NA3_delete_yearbefore_bind,file1_2015_NO_NA3_delete_yearbefore_jumpo) file1_2016_NO_NA3_delete_yearbefore_jumpo_bind=cbind(file1_2016_NO_NA3_delete_yearbefore_bind,file1_2016_NO_NA3_delete_yearbefore_jumpo) file1_2017_NO_NA3_delete_yearbefore_jumpo_bind=cbind(file1_2017_NO_NA3_delete_yearbefore_bind,file1_2017_NO_NA3_delete_yearbefore_jumpo)

SAVE

write.csv(file1_2014_NO_NA3_delete_yearbefore_bind, paste0(“file1_2014_NO_NA3_delete_yearbefore_bind.csv”), row.names = F,fileEncoding=“euc-kr”) write.csv(file1_2015_NO_NA3_delete_yearbefore_bind, paste0(“file1_2015_NO_NA3_delete_yearbefore_bind.csv”), row.names = F,fileEncoding=“euc-kr”) write.csv(file1_2016_NO_NA3_delete_yearbefore_bind, paste0(“file1_2016_NO_NA3_delete_yearbefore_bind.csv”), row.names = F,fileEncoding=“euc-kr”) write.csv(file1_2017_NO_NA3_delete_yearbefore_bind, paste0(“file1_2017_NO_NA3_delete_yearbefore_bind.csv”), row.names = F,fileEncoding=“euc-kr”)

READ

file1_2013_NO_NA3 <- read.csv(‘file1_2013_NO_NA3.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,‘’),fileEncoding=“euc-kr”) file1_2014_NO_NA3_delete_yearbefore <- read.csv(’file1_2014_NO_NA3_delete_yearbefore_bind.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,‘’),fileEncoding=“euc-kr”) file1_2015_NO_NA3_delete_yearbefore <- read.csv(’file1_2015_NO_NA3_delete_yearbefore_bind.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,‘’),fileEncoding=“euc-kr”) file1_2016_NO_NA3_delete_yearbefore <- read.csv(’file1_2016_NO_NA3_delete_yearbefore_bind.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,‘’),fileEncoding=“euc-kr”) file1_2017_NO_NA3_delete_yearbefore <- read.csv(’file1_2017_NO_NA3_delete_yearbefore_bind.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,’’),fileEncoding=“euc-kr”)

file1_2014_NO_NA3_delete_yearbefore_bind <- read.csv(‘file1_2014_NO_NA3_delete_yearbefore_bind.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,‘’),fileEncoding=“euc-kr”) file1_2015_NO_NA3_delete_yearbefore_bind <- read.csv(’file1_2015_NO_NA3_delete_yearbefore_bind.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,‘’),fileEncoding=“euc-kr”) file1_2016_NO_NA3_delete_yearbefore_bind <- read.csv(’file1_2016_NO_NA3_delete_yearbefore_bind.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,‘’),fileEncoding=“euc-kr”) file1_2017_NO_NA3_delete_yearbefore_bind <- read.csv(’file1_2017_NO_NA3_delete_yearbefore_bind.csv’,sep=“,”,header = T, stringsAsFactors = F, na.strings = c(‘NA’,’’),fileEncoding=“euc-kr”)

찾기

size=nrow(data_set2) for(i in c(1:size)){ if(data_set2$당월_매출_금액[i]==‘14865728’){ print(i) stop() } } data_set2[22,] data_set1[1,]

NULL 확인

colSums(is.na(file1_2014_NO_NA3_delete_yearbefore_bind)) colSums(is.na(file1_2015_NO_NA3_delete_yearbefore_bind)) colSums(is.na(file1_2016_NO_NA3_delete_yearbefore_bind)) colSums(is.na(file1_2017_NO_NA3_delete_yearbefore_bind)) colSums(is.na(file1_2014_2017_NO_NA3_delete_yearbefore_bind))

rbind

file1_2014_2017_NO_NA3_delete=rbind(file1_2013_NO_NA3,file1_2014_NO_NA3_delete,file1_2015_NO_NA3_delete,file1_2016_NO_NA3_delete,file1_2017_NO_NA3_delete) file1_2014_2017_NO_NA3_delete_yearbefore_bind=rbind(file1_2014_NO_NA3_delete_yearbefore_bind,file1_2015_NO_NA3_delete_yearbefore_bind,file1_2016_NO_NA3_delete_yearbefore_bind,file1_2017_NO_NA3_delete_yearbefore_bind) file1_2014_2017_NO_NA3_delete_yearbefore_jumpo_bind=rbind(file1_2014_NO_NA3_delete_yearbefore_jumpo_bind,file1_2015_NO_NA3_delete_yearbefore_jumpo_bind,file1_2016_NO_NA3_delete_yearbefore_jumpo_bind,file1_2017_NO_NA3_delete_yearbefore_jumpo_bind) file1_2014_2017_NO_NA3_delete_yearbefore_cnt_bind=rbind(file1_2014_NO_NA3_delete_yearbefore_cnt,file1_2015_NO_NA3_delete_yearbefore_cnt,file1_2016_NO_NA3_delete_yearbefore_cnt,file1_2017_NO_NA3_delete_yearbefore_cnt)

cbind

file1_2014_2017_NO_NA3_delete_yearbefore_jumpo_cnt_bind=cbind(file1_2014_2017_NO_NA3_delete_yearbefore_jumpo_bind,file1_2014_2017_NO_NA3_delete_yearbefore_cnt_bind)

read

file1_2014_2017_NO_NA3_delete_yearbefore_jumpo_bind <- read.csv(‘file1_2014_2017_NO_NA3_delete_yearbefore_jimpo_bind.csv’,header = T, stringsAsFactors = F, na.strings = c(‘NA’,’’),fileEncoding=“euc-kr”)

Write

write.csv(file1_2014_2017_NO_NA3_delete, paste0(“file1_2014_2017_NO_NA3_delete.csv”), row.names = F,fileEncoding=“euc-kr”) write.csv(file1_2014_2017_NO_NA3_delete_yearbefore_bind, paste0(“file1_2014_2017_NO_NA3_delete_yearbefore_bind.csv”), row.names = F,fileEncoding=“euc-kr”) write.csv(file1_2014_2017_NO_NA3_delete_yearbefore_jumpo_bind, paste0(“file1_2014_2017_NO_NA3_delete_yearbefore_jimpo_bind.csv”), row.names = F,fileEncoding=“euc-kr”) write.csv(file1_2014_2017_NO_NA3_delete_yearbefore_jumpo_bind, paste0(“file1_2014_2017_NO_NA3_delete_yearbefore_jimpo_bind.csv”), row.names = F,fileEncoding=“euc-kr”) write.csv(file1_2014_2017_NO_NA3_delete_yearbefore_jumpo_cnt_bind, paste0(“file1_2014_2017_NO_NA3_delete_yearbefore_jumpo_cnt_bind.csv”), row.names = F,fileEncoding=“euc-kr”)

TEST

data_set1=file1_2014_2017_NO_NA3_delete_yearbefore_jumpo_cnt_bind

((data_set1\(yearbefore+1)/data_set1\)당월_매출_금액)

yearbefor 가 NA 인 것들 분석

특이 Row 필터링

월_평균_소득_금액, 지출_총금액 (row 삭 제)

file1_2014_2017_NO_NA3_delete_yearbefore_bind_NA <- filter(file1_2014_2017_NO_NA3_delete_yearbefore_bind,is.na(file1_2014_2017_NO_NA3_delete_yearbefore_bind$yearbefore))

1 month befor 매출액

i=1 data_set1=file1_2014_NO_NA3_delete function_NO_NA3_monthbefore <- function(arg1) { data_set1=arg1 size=nrow(data_set1) monthbefore=data.frame(rep(1,size)) for(i in c(1:size)){ if(any((data_set1\(상권_코드 == data_set1\)상권_코드[i])&(data_set1\(서비스_업종_코드 == data_set1\)서비스_업종_코드[i])&(data_set1\(기준_년월_코드==data_set1\)기준_년월_코드[i]-1))){ monthbefore[i,1] = data_set1\(당월_매출_금액[(data_set1\)상권_코드 == data_set1\(상권_코드[i])&(data_set1\)서비스_업종_코드 == data_set1\(서비스_업종_코드[i])&(data_set1\)기준_년월_코드==data_set1$기준_년월_코드[i]-1)] print(monthbefore[i,1]) } else { yearbefore[i,1] = NA print(monthbefore[i,1]) } } return=yearbefore }

추가 컬럼 작업

1 year before 점포수

function_NO_NA3_yearbefore_jumpo <- function(arg1,arg2) { data_set2=arg1 data_set1=arg2 size=nrow(data_set1) yearbefore=data.frame(rep(1,size)) for(i in c(1:size)){ if(any((data_set2\(상권_코드 == data_set1\)상권_코드[i])&(data_set2\(서비스_업종_코드 == data_set1\)서비스_업종_코드[i])&(data_set2\(기준_년월_코드==data_set1\)기준_년월_코드[i]-100))){ yearbefore[i,1] = data_set2\(점포수[(data_set2\)상권_코드 == data_set1\(상권_코드[i])&(data_set2\)서비스_업종_코드 == data_set1\(서비스_업종_코드[i])&(data_set2\)기준_년월_코드==data_set1$기준_년월_코드[i]-100)] print(yearbefore[i,1]) } else { yearbefore[i,1] = NA print(yearbefore[i,1]) } } return=yearbefore }

function_NO_NA3_yearbefore_cnt <- function(arg1,arg2) { data_set2=arg1 data_set1=arg2 size=nrow(data_set1) yearbefore=data.frame(rep(1,size)) for(i in c(1:size)){ if(any((data_set2\(상권_코드 == data_set1\)상권_코드[i])&(data_set2\(서비스_업종_코드 == data_set1\)서비스_업종_코드[i])&(data_set2\(기준_년월_코드==data_set1\)기준_년월_코드[i]-100))){ yearbefore[i,1] = data_set2\(당월_매출_건수[(data_set2\)상권_코드 == data_set1\(상권_코드[i])&(data_set2\)서비스_업종_코드 == data_set1\(서비스_업종_코드[i])&(data_set2\)기준_년월_코드==data_set1$기준_년월_코드[i]-100)] print(yearbefore[i,1]) } else { yearbefore[i,1] = NA print(yearbefore[i,1]) } } return=yearbefore }

file1_2014_NO_NA3_delete_yearbefore_jumpo=function_NO_NA3_yearbefore_jumpo(file1_2013_NO_NA3,file1_2014_NO_NA3_delete) file1_2015_NO_NA3_delete_yearbefore_jumpo=function_NO_NA3_yearbefore_jumpo(file1_2014_NO_NA3_delete,file1_2015_NO_NA3_delete) file1_2016_NO_NA3_delete_yearbefore_jumpo=function_NO_NA3_yearbefore_jumpo(file1_2015_NO_NA3_delete,file1_2016_NO_NA3_delete) file1_2017_NO_NA3_delete_yearbefore_jumpo=function_NO_NA3_yearbefore_jumpo(file1_2016_NO_NA3_delete,file1_2017_NO_NA3_delete)

file1_2014_NO_NA3_delete_yearbefore_cnt=function_NO_NA3_yearbefore_cnt(file1_2013_NO_NA3,file1_2014_NO_NA3_delete_yearbefore) file1_2015_NO_NA3_delete_yearbefore_cnt=function_NO_NA3_yearbefore_cnt(file1_2014_NO_NA3_delete_yearbefore,file1_2015_NO_NA3_delete_yearbefore) file1_2016_NO_NA3_delete_yearbefore_cnt=function_NO_NA3_yearbefore_cnt(file1_2015_NO_NA3_delete_yearbefore,file1_2016_NO_NA3_delete_yearbefore) file1_2017_NO_NA3_delete_yearbefore_cnt=function_NO_NA3_yearbefore_cnt(file1_2016_NO_NA3_delete_yearbefore,file1_2017_NO_NA3_delete_yearbefore)

2 계수추정값

전체 data

변수명 OLS(전체) Tau 0.1 Tau 0.5 Tau 0.9
Intercept 2.502 *** -0.294 1.535 4.451
총유동인구수 0.070 *** 0.076 0.053 0.055
총직장인구수 0.023 *** 0.032 0.017 0.018
총상주인구수 -0.010 *** -0.008 -0.006 -0.014
월평균소득 0.058 ** -0.140 -0.015 0.116
집객시설수 0.008 *** 0.005 0.001 -0.002
남자비율 0.102 *** 0.255 0.112 -0.132
주말비율 0.129 *** 0.545 0.023 -0.256
전년 매출 1.884 *** 2.291 2.065 1.645

1-1)외식업

변수명 OLS(외식업) Tau 0.1 Tau 0.5 Tau 0.9
Intercept 2.395 *** -0.431 1.654 4.332
총유동인구수 0.093 *** 0.106 0.063 0.070
총직장인구수 0.026 *** 0.074 0.022 0.017
총상주인구수 -0.012 *** -0.010 -0.007 -0.017
월평균소득 0.058 *** -0.059 0.012 0.154
집객시설수 0.001 *** 0.003 -0.001 -0.001
남자비율 -0.017 * 0.083 0.015 -0.154
주말비율 0.416 *** 0.450 0.254 0.434
전년 매출 1.844 *** 2.245 2.016 1.583

1-2)서비스업

변수명 OLS(서비스업) Tau 0.1 Tau 0.5 Tau 0.9
Intercept 2.984 *** 0.798 2.156 4.486
총유동인구수 0.080 *** 0.068 0.068 0.090
총직장인구수 0.026 *** 0.054 0.029 0.030
총상주인구수 -0.012 *** 0.001 -0.009 -0.028
월평균소득 0.058 *** -0.126 -0.009 0.121
집객시설수 0.001 *** 0.006 0.001 -0.003
남자비율 -0.017 *** 0.157 0.065 -0.099
주말비율 0.416 *** 0.150 -0.281 -0.559
전년 매출 1.844 *** 2.121 1.963 1.622

1-3)도소매업

변수명 OLS(도소매업) Tau 0.1 Tau 0.5 Tau 0.9
Intercept 2.389 *** -0.125 1.166 4.059
총유동인구수 0.051 *** 0.044 0.055 0.045
총직장인구수 0.020 *** -0.002 0.017 0.018
총상주인구수 -0.009 *** -0.018 -0.004 -0.005
월평균소득 -0.010 *** -0.262 -0.030 0.177
집객시설수 0.002 *** 0.007 0.001 -0.002
남자비율 0.278 *** 0.251 0.408 0.122
주말비율 0.385 *** 0.881 0.156 -0.247
전년 매출 1.909 *** 2.386 2.111 1.645

2-1) 매출 하락그룹

변수명 OLS(그룹1) Tau 0.1 Tau 0.5 Tau 0.9
Intercept -0.851 *** -1.517 -0.889 -0.363
총유동인구수 0.013 ** 0.028 0.006 0.001
총직장인구수 0.001 0.508 -0.001 0.003 0.001
총상주인구수 -0.001 0.937 -0.001 -0.001 0.001
월평균소득 -0.056 *** -0.162 -0.043 -0.006
집객시설수 0.003 *** 0.008 0.002 0.001
남자비율 0.115 *** 0.190 0.089 0.015
주말비율 0.304 *** 0.455 0.250 0.042
전년 매출 2.337 *** 2.406 2.371 2.315

2-2) 매출 유지그룹

변수명 OLS(그룹2) Tau 0.1 Tau 0.5 Tau 0.9
Intercept 0.211 *** -0.161 0.274 0.470
총유동인구수 0.011 *** 0.009 0.016 0.006
총직장인구수 0.003 *** 0.003 0.003 0.002
총상주인구수 -0.001 0.195 -0.001 -0.001 -0.001
월평균소득 -0.011 *** -0.008 -0.016 -0.006
집객시설수 0.001 0.275 0.001 0.001 -0.001
남자비율 0.024 *** 0.016 0.037 0.014
주말비율 -0.012 *** 0.011 -0.020 -0.021
전년 매출 2.281 *** 2.301 2.274 2.274

2-3) 매출 상승그룹

변수명 OLS(그룹3) Tau 0.1 Tau 0.5 Tau 0.9
Intercept 3.612 *** 0.705 2.301 5.241
총유동인구수 0.041 *** 0.004 0.025 0.066
총직장인구수 0.011 *** 0.001 0.005 0.019
총상주인구수 -0.006 *** -0.002 -0.006 -0.011
월평균소득 0.126 *** 0.012 0.084 0.278
집객시설수 -0.001 * -0.001 -0.001 -0.001
남자비율 -0.122 *** -0.006 -0.081 -0.320
주말비율 -0.135 *** -0.030 -0.138 -0.229
전년 매출 1.751 *** 2.243 1.975 1.460

3-1) 주요상권-강남

변수명 OLS(강남) Tau 0.1 Tau 0.5 Tau 0.9
Intercept 2.809 *** -0.082 1.582 4.630
총유동인구수 0.070 *** 0.040 0.046 0.082
총직장인구수 0.108 *** 0.019 0.091 0.199
총상주인구수 -0.099 *** -0.047 -0.076 -0.143
월평균소득 0.011 *** -0.037 -0.001 0.058
집객시설수 0.005 * 0.013 0.002 -0.001
남자비율 0.187 *** 0.495 0.146 -0.200
주말비율 0.305 *** 0.602 0.200 0.005
전년 매출 1.832 *** 2.172 2.040 1.645

3-2) 주요상권-마포

변수명 OLS(마포) Tau 0.1 Tau 0.5 Tau 0.9
Intercept 3.203 *** 0.177 1.970 5.194
총유동인구수 0.094 *** 0.052 0.062 0.192
총직장인구수 0.060 *** 0.094 0.042 0.017
총상주인구수 -0.011 ** -0.015 0.008 -0.015
월평균소득 -0.030 0.063 -0.136 -0.033 0.044
집객시설수 0.002 * 0.007 0.001 -0.001
남자비율 0.178 *** 0.423 0.171 -0.221
주말비율 0.169 *** 0.413 0.112 -0.012
전년 매출 1.792 *** 2.204 2.001 1.542

3-3) 주요상권-관악

변수명 OLS(관악) Tau 0.1 Tau 0.5 Tau 0.9
Intercept 2.745 *** -0.456 1.460 4.947
총유동인구수 0.046 ** 0.050 0.035 0.015
총직장인구수 -0.008 0.412 0.010 0.014
총상주인구수 -0.003 0.808 0.146 -0.028
월평균소득 -0.053 * -0.211 -0.018 0.060
집객시설수 0.004 *** 0.006 0.001 -0.001
남자비율 0.211 *** 0.398 0.195 0.053
주말비율 0.201 *** 0.677 0.002 -0.285
전년 매출 1.913 *** 2.322 2.090 1.673