**해당 데이터는 제가 학원 강의를 수료하며 받은 데이터이며 원본 데이터는 기업으로부터 제공받은 데이터라서 공유할 수 없습니다.
**본문은 공부를 하며 과정을 이해하며 생각하기 위함이니 참고 해주시면 감사드리겠습니다.
## Environment : Anaconda-navigator
## Programming Language : Python 3
## Import Pandas as pd
## import Numpy as np
## import seaborn as sns
## import matplotlib as mpl
## import matplotlib pyplot as plt
## Data provided by DS school & Origin data from Noom.
## Noom is a company that mentioned as below.
눔(Noom Inc.)은 모바일 플랫폼을 통해 건강관리 서비스를 제공하는 회사로서 2008년, 정세주 대표와 구글 수석 엔지니어 출신이자 공동창업자인 아텀 페타코브(Artem Petakov)에 의해 설립되었습니다. 눔(Noom)은 미국, 일본, 독일, 한국 등 14개국에서 4,600만명이 가입한 글로벌 서비스로 성장하였고, 2009년과 2010년 연이어 구글(Google) 이 선정한 가장 혁신적인 개발 스타트업 중 하나로 선정되었습니다.
Target
- 데이터를 불러오기 및 전반적인 정보 확인
- 불러온 데이터들을 전처리
- 데이터 분석
첫번째로 데이터를 불러온 후 전반적인 부분을 확인해보겠습니다.
# noom_user.csv 파일을 읽어옵니다
# 이 데이터는 사용자의 프로필(성별, 나이 등)과 구매 정보 등을 담고 있습니다
# 또한 이 과정에서 구매 날짜(Purchased At)는 별도로 날짜 컬럼으로 해석할 수 있게 parse_dates 옵션에 추각합니다
# 이 결과를 raw_data라는 이름의 변수에 할당합니다
raw_data = pd.read_csv("noom_user.csv", parse_dates=["Purchased At"])
print(raw_data.shape) # data 변수에 할당된 데이터의 행렬 사이즈를 출력합니다
print(raw_data.columns) # data 컬럼들을 출력합니다
raw_data.head() # data 데이터의 상위 5개를 띄웁니다
컬럼에 대한 간단한 설명을 참고해주시기 바랍니다.
# 컬럼에 대한 설명은 다음과 같습니다.
# Access Code - 고객의 접근 코드, 쉽게 말해 고객을 식별할 수 있는 정보라고 보면 됩니다.
# Name - 고객의 이름입니다. 한글로 되어있습니다.
# Gender - 고객의 성별입니다. MALE과 FEMALE, 그리고 빈 값(NaN)으로 되어있습니다.
# Age - 고객의 나이입니다.
# Height - 고객의 키입니다. cm 기준입니다.
# Initial Weight - 고객이 처음 눔 코치에 회원 가입 했을 당시의 몸무게입니다. kg 기준입니다.
# Lowest Weight - 고객이 눔 코치를 이용하는 동안 측정한 몸무게 중, 가장 낮은 몸무게입니다. kg 기준입니다.
# Target Weight - 고객이 눔 코치를 처음 회원 가입할 때 설정한 목표 몸무게입니다. kg 기준입니다.
# Product Name - 눔 코치 프로그램의 상세 제품명입니다.
# Status - 고객의 유료 서비스 결제 현황입니다. 결제중(complete), 결제 취소(cancelled), 환불 완료(refunded)로 되어있습니다.
# Price - 서비스를 구입할 당시의 가격입니다. 원(₩) 기준입니다.
# Purchased At - 서비스를 구입할 당시의 시간입니다.
# Payment Type - 결제 방식입니다. 현재는 Recurring(구독형 결제)만 있습니다.
# Channel - 서비스 구입 경로입니다. 구글, 페이스북, 네이버 등 다양한 경로를 통해 서비스를 구입하고 있습니다.
데이터에 대한 정보를 보겠습니다.
raw_data.info()
데이터에 대한 describe를 보겠습니다.
전반적인 부분을 확인했으니 전처리 과정으로 들어가겠습니다.
차후 편한 분석을 위해 필요한 컬럼만 골라내고 'Access Code'를 인덱스로 지정해주도록 하겠습니다.
# 필요한 컬럼들만 리스트화 해서 변수에 저장합니다
clean_columns = ['Access Code', 'Name', 'Gender', 'Age', 'Height',
'Initial Weight', 'Lowest Weight', 'Target Weight',
'Status', 'Price', 'Purchased At', 'Channel']
clean_data = raw_data[clean_columns] # 저장된 변수를 활용하여 clean_data에 저장합니다
print(clean_data.shape) # clean_data의 shape을 확인합니다
clean_data.columns # clean_data의 컬럼들이 잘 적용되었는지 확인합니다
컬럼들이 잘 들어간것을 확인했습니다. 이제 index를 지정하겠습니다.
clean_data = clean_data.set_index('Access Code') # set_index를 통해 인덱스를 지정합니다
clean_data.head(3) # 상단 3개까지 데이터를 확인합니다
인덱스가 clean_data에 잘 지정 되었습니다.
다음 페이지에서는 본 환경을 이어서 동일한 데이터를 가지고 병합을 진행하도록 하겠습니다.
*** 본 페이지는 본인의 공부를 위해 작성되었으며, 협찬이나 문의를 받고 기재한 내용이 아닙니다. 혹시 문의사항이 있으시거나 문제가 될 경우 연락 주시기 바랍니다.***
'데이터 분석 > Python - 정리하자' 카테고리의 다른 글
VIP 찾기 데이터 분석 (0) | 2024.07.07 |
---|---|
건강관리 현업 데이터로 전처리 (0) | 2024.07.06 |
정리된 데이터 병합해보기 (0) | 2024.07.05 |
퍼널(Funnel) 데이터를 정리 해보자 (2) | 2024.07.05 |
불필요한 컬럼 정리 해보자 (0) | 2024.07.05 |