1 | knitr::opts_chunk$set(echo = TRUE, |
KDX_Contest_2020_final_analysis
코로나19 이후, 유의미한 소비 인사이트를 발굴하기 위해 뷰티 업종 소비 추이를 분석하였습니다. 해당 파일은 코드 위주의 파일이며 세부 내역은 최종 제출한 PPT로 확인 부탁드립니다.
1. 준비 작업
1.1 패키지 설치 및 불러오기
1 | # 패키지 설치하기 |
1 | # 패키지 불러오기 |
1 | # 시각화 테마를 위한 bbplot 패키지 설치 |
2. Mcorpotarion Data
2.1 기초 & 색조 화장품 엑셀 정리
1 | # 사용할 데이터만 정리하기(메이크업, 스킨케어) |
2.2 월별 추이 확인을 위한 전처리 및 시각화
1 | # 전체 필터 넣기 |
1 | # 성별&나이 결측치 제거하기(성별 F, M, 나이 0 이상만 추출) |
1 | # "메이크업 용품" 카테고리 추출 |
1 | # 월별 데이터 합계_메이크업 용품 |
1 | # "스킨 케어" 카테코리 추출 |
1 | # 월별 데이터 합계_스킨케어 |
1 | # 시각화하기 |
1 | #색조 화장품(메이크업 용품)_월별 추이_ppt.12p |
1 | # 기초 화장품(스킨케어)_월별 추이_ppt.12p |
2.3 실제 분석을 위한 데이터 전처리 및 시각화
1 | # 성별&나이 결측치 제거하기(성별 F, M, 나이 0 이상만 추출) |
1 | # 비교값 만들기 |
1 | # 억 원 단위 생성 |
1 | # 문자형 데이터 -> 날짜 데이터로 전환 |
- 시각화
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28# 색조화장품(메이크업 용품) 데이터 시각화 _ppt.14p
final_products
cosmetics <- final_products %>%
filter(카테고리명 == "메이크업 용품")
font_import(pattern = "NanumSquare")
# loadfonts(device = "win")
theme_update(text = element_text(family = "NanumSquare_ac Bold"))
graph_cosmetics <- ggplot(cosmetics, aes(x = 구매일, y = 금액합계, color = 고객성별)) +
geom_smooth() + geom_point(size = 0.1) +
scale_y_continuous(labels = label_ko_num, breaks = seq(0, 2000000000, by = 250000000)) +
scale_x_date(date_breaks="3 month", minor_breaks=NULL, date_labels = "%Y.%m") +
theme(
axis.text.x = element_text(size = 8,family= "NanumSquare_ac", hjust = 1),
axis.text.y = element_text(size = 8,family = "NanumSquare_ac"),
axis.title.x = element_text(size = 12, family = "NanumSquare_ac"),
axis.title.y = element_text(size = 12, family = "NanumSquare_ac"),
) +
geom_hline(yintercept = 0, size = 1, colour="#999999") +
scale_colour_manual(values = c("#EB3232", "#FAAB18")) +
bbc_style()
graph_cosmetics1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25# 기초화장품(스킨케어) 데이터 시각화_ppt.14p
skincare <- final_products %>%
filter(카테고리명 == "스킨케어")
font_import(pattern = "NanumSquare")
# loadfonts(device = "win")
theme_update(text = element_text(family = "NanumSquare_ac Bold"))
graph_skincare <- ggplot(skincare, aes(x = 구매일, y = 금액합계, color = 고객성별)) +
geom_smooth() + geom_point(size = 0.1) +
scale_y_continuous(labels = label_ko_num, breaks = seq(0, 600000000, by = 100000000)) +
scale_x_date(date_breaks="3 month", minor_breaks=NULL, date_labels = "%Y.%m") +
theme(
axis.text.x = element_text(size = 8,family= "NanumSquare_ac", hjust = 1),
axis.text.y = element_text(size = 8,family = "NanumSquare_ac"),
axis.title.x = element_text(size = 12, family = "NanumSquare_ac"),
axis.title.y = element_text(size = 12, family = "NanumSquare_ac"),
) +
geom_hline(yintercept = 0, size = 1, colour="#999999") +
scale_colour_manual(values = c("#EB3232", "#FAAB18")) +
bbc_style()
graph_skincare3. Shinhancard Data
3.1 신한카드 ‘화장품’ 카테고리 데이터 전처리
1 | # 신한카드 오프라인 구매 데이터 불러오기 |
1 | # 신한카드 오프라인 구매 데이터 결측치 제거 |
1 | # 신한카드 데이터 필터링 |
1 | # 신한카드 성별&나이 결측치 제거하기(성별 F, M, 나이 0 이상만 추출) |
1 | # 신한카드 '화장품' 카테고리 구매수 합계 |
1 | # 신한카드 데이터 시계열 데이터로 변환 |
3.2 신한카드 데이터 시각화
1 | # 신한카드 '화장품' 카테고리 데이터 시각화_ppt.13p |
4. Naver Keyword Data
4.1 마스크 키워드 검색량 데이터
1 | # 마스크 키워드 검색량 데이터 불러오기 |
1 | # 문자형 데이터를 숫자형으로 변환 |
1 | # 문자형 데이터를 날짜형으로 변환 |
1 | # 마스크 키워드 검색량 데이터 시각화_ppt.15p |
4.2 (색조 & 기초) 화장품 키워드 검색량 데이터
1 | # (색조 & 기초) 화장품 키워드 검색량 데이터 불러오기 |
1 | # 문자형 데이터를 숫자형으로 변환 |
1 | # 문자형 데이터를 날짜형으로 변환 |
1 | # 색조 & 기초 메이크업 화장품 키워드 검색량 데이터 시각화_ppt.16p |
4.3 (립 & 아이) 화장품 키워드 검색량 데이터
1 | # (립 & 아이) 화장품 키워드 검색량 데이터 불러오기 |
1 | # 문자형 데이터를 날짜형으로 변환 |
1 | # 립 & 아이 메이크업 화장품 키워드 검색량 데이터 시각화_ppt.15p |
4.4 (마스크프루프) 화장품 키워드 검색량 데이터
1 | # (마스크프루프) 화장품 키워드 검색량 데이터 불러오기 |
1 | # 문자형 데이터를 숫자형으로 변환 |
1 | # 문자형 데이터를 날짜형으로 변환 |
1 | # 마스크프루프 화장품 키워드 검색량 데이터 시각화 |