728x90
❤️ 배운 것
1. 시각화를 위한 분석 개요
이상치 경계 (아래 경계): Q1 - 1.5 * IQR = 150 - 1.5 * 30 = 150 - 45 = 105
이상치 경계 (위 경계): Q3 + 1.5 * IQR = 180 + 1.5 * 30 = 180 + 45 = 225
IQR = Q3 - Q1
시각화 상황별 예시
비교 분석: 막대 차트, 라인차트
구성 분석: 파이차트, 히트맵
관계 분석: 스캐터 차트
분포 분석: 히스토그램, 박스플랏, 바이올린 플랏
데이터의 종류
연속형 데이터: 숫자, ex) 키, 몸무게, 판매량, 매출
범주형 데이터: 범주, ex) 혈액형, mbti, 성별, 사는 지역
- A사가 판매하는 10개의 제품의 월별 판매량 비교
- 비교분석
- 막대(x 범주형(월, 제품 명), y : 연속형(판매량))
- 라인(x 범주형(월), y: 연속형(제품에 따른 판매량))
- 비교분석
- 인구 밀도와 평균 수명 분석
- 관계 분석
- 스캐터(x: 연속형, y: 연속형)
- 관계 분석
- 학생들의 시험 점수 분석
- 분포 분석
- 히스토그램(x or y: 연속형(학생 시험점수))
- 바이올린(xor y: 연속형(학생 시험점수))
- 분포 분석
- 대륙(아시아, 유럽)의 연간 GDP 분석
- 관계 분석
- 스캐터
- 비교 분석
- 막대
- 라인
- 구성 분석
- 히트맵(비교)
- 지도
- 관계 분석
2. chart visualization
- matplotlib
- seaborn
- plotly
# 1. '최종주문요일'에 대한 횟수 시각화(마지막으로 주문한 요일의 횟수)
import seaborn as sns
cf_order_day = df['최종주문요일'].value_counts()
ax = sns.barplot(x=cf_order_day.index, y=cf_order_day.values)
ax.bar_label(ax.containers[0])
# 2. 성별에 따른 '최종주문요일'에 대한 횟수 시각화(마지막으로 주문한 요일의 횟수)
q1 = df[['성별','최종주문요일','ID']].groupby(['성별', '최종주문요일'], as_index = False).count()
q1.rename(columns = {'ID' : 'user_count'}, inplace = True)
sns.barplot(data=q1, x="최종주문요일", y="user_count", hue="성별")
# 3. '최종주문일자'와 '가입월' 데이터 분포 시각화
import plotly.express as px
fig = px.histogram(df, x="최종주문일자")
fig.show()
fig = px.histogram(df, x="가입월")
fig.show()
# 4. 성별에 따른 '최종주문월'에 대한 '총순수이익' 시각화
sns.lineplot(data=df, x="최종주문월", y="총순수이익", hue="성별")
💛 배운점/느낀점
- 시각화 이전 여러가지 분석 종류를 통해 가진 데이터를 어떤 방식으로 표현하는 것이 적합할 지 분석한 후 진행해야 한다는 것을 느꼈다.
- 내일은 멘토링데이라서 빅테크기업의 현직자님에게 상담을 받기로 했다. 그동안 혼자서 해결이 안되고 궁금했던 내용을 많이 물어보고 싶다.
반응형
'Education > 새싹 TIL' 카테고리의 다른 글
새싹 AI데이터엔지니어 핀테커스 4주차 (화) - ML 관련 수학 (1) (0) | 2023.09.19 |
---|---|
새싹 AI데이터엔지니어 핀테커스 4주차 (월) - Math in Python (0) | 2023.09.18 |
새싹 AI데이터엔지니어 핀테커스 3주차 (수) - pandas(3), matplotlib (0) | 2023.09.14 |
새싹 AI데이터엔지니어 핀테커스 3주차 (화) - pandas(2) (0) | 2023.09.12 |
새싹 AI데이터엔지니어 핀테커스 3주차 (월) - pandas(1) (0) | 2023.09.11 |