[Foundations of Data Science] 유산소 운동 피트니스 분석 (기술통계 분석 EDA)
2022. 11. 6. 22:33ㆍ노트/Data Science : 데이터과학
유산소 운동 피트니스 케이스 스터디 - 기술 통계(Descriptive Statistics)
AdRight의 시장 리서치 팀에게 유산소 운동 피트니스에서 제공된 각 런닝머신 기구에 대한 일반적인 고객들의 프로파일을 확인하라는 업무가 할당되었습니다. 시장 리서치 팀은 고객 특성과 관련하여 제품군에 걸쳐 차이가 있는지 조사하기로 결정했습니다. 팀에서는 과거 3개월 동안 유산소 운동 피트니스 소매점의 런닝머신 기구를 구매한 개인들에대한 데이터를 수집하였습니다. 이 데이터는 CardioGoodFitness.csv 파일입니다.
팀은 다음 고객 변수를 연구하기로 했습니다.
- 구매된 상품, TM195, TM498, or TM798
- 성별
- 나이
- 교육 수준
- 관계 상태, 싱글 또는 파트너가 있는지,
- 연간 가구 소득
- 고객이 매주 런닝머신을 사용하기로 계획한 평균 횟수
- 고객이 매주 걷거나 달리기를 기대하는 miles 수
- 그리고, 1-5 스케일로, 자체 평가한 피트니스 상태, 1은 나쁜 상태고 5는 가장 좋은 상태
데이터셋 : https://www.kaggle.com/datasets/saurav9786/cardiogoodfitness
각 유산소 운동 런닝머신 상품 라인들에 대한 고객 프로필을 생성하기 위한 기술 분석을 수행하시오
# Load the necessary packages
import numpy as np
import pandas as pd
# Load the Cardio Dataset
mydata = pd.read_csv('CardioGoodFitness.csv')
mydata.head()
mydata.describe(include = 'all')
mydata.info()
import matplotlib.pyplot as plt
%matplotlib inline
mydata.hist(figsize = (20,30))
# importing seaborn library
import seaborn as sns
sns.boxplot(x = 'Gender', y = 'Age' , data = mydata)
sns.boxplot(x = 'Product', y = 'Age', data = mydata)
pd.crosstab(mydata['Product'], mydata['Gender'])
pd.crosstab(mydata['Product'], mydata['MaritalStatus'])
sns.countplot(x = "Product", hue = 'Gender', data = mydata)
pd.pivot_table(mydata, index = ['Product', 'Gender']
, columns = ['MaritalStatus'], aggfunc = len)
pd.pivot_table(mydata, 'Income' , index = ['Product', 'Gender']
, columns = ['MaritalStatus'])
pd.pivot_table(mydata, 'Miles' , index = ['Product', 'Gender']
, columns = ['MaritalStatus'])
sns.pairplot(mydata)
mydata['Age'].std()
>>> 6.943498135399795
mydata['Age'].mean()
>>> 28.788888888888888
sns.displot(data = mydata, x = 'Age', kde = True)
mydata.hist(by = 'Gender', column = 'Age')
mydata.hist(by = 'Gender', column = 'Income')
mydata.hist(by = 'Gender', column = 'Miles')
mydata.hist(by = 'Product', column = 'Miles', figsize = (20,30))
corr = mydata.corr()
corr
sns.heatmap(corr, annot = True)
# Simple Linear Regression
# Load function from sklearn
from sklearn import linear_model
# Create linear regression object
regr = linear_model.LinearRegression()
y = mydata['Miles']
x = mydata[['Usage', 'Fitness']]
# Train the model using the training sets
regr.fit(x,y)
>>> LinearRegression()
regr.coef_
>>> array([20.21486334, 27.20649954])
regr.intercept_
>>> -56.74288178464856
# MilesPredicted = -56.74 + 20.21 * Usage + 27.20 * Fitness
'노트 > Data Science : 데이터과학' 카테고리의 다른 글
[Foundation of Data Science] 가설 검정 프레임워크 (0) | 2024.04.09 |
---|---|
[Naver Deview 2021] ClickHouse (클릭하우스) 리뷰 (1) | 2024.03.26 |
[Foundation of Data Science] 가설 검정 (0) | 2023.11.05 |
[Foundation of Data science] 추론 통계 (0) | 2022.12.10 |
[Foundations of Data Science] 자살률 분석 (이변량 분석 EDA) (1) | 2022.09.15 |