일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 컨버티드
- 투자도서
- 실기1유형
- 우금캐
- 데이터넥스트레벨챌린지
- BNK저축은행
- 우리금융캐피탈면접
- 메타코드m
- 데이터분석
- 투자마인드
- sql
- 빅분기실기
- 우리금융캐피탈
- 데이터리안
- 빅데이터분석기사실기
- 메타코드
- MySQL
- 정처기
- 데이터자격증
- 우금캐면접
- 데이터분석전문가
- 통계독학
- 빅분기1유형
- 빅분기 실기
- 데이터분석가
- 데이터분석마인드셋
- 빅데이터분석기사 실기
- 빅분기
- boostcourse
- 빅데이터분석기사
- Today
- Total
하파와 데이터
df.describe(include='object') 데이터프레임 기술분석 다양하게 해보기 본문
일반적으로 데이터분석을 하거나, ML 등의 데이터를 기반으로 무언가를 작업할 때 데이터를 불러온 뒤 가장 처음하는 것이 데이터가 어떤 구조로 되어있는지? 살펴보는 것이다. 어려운 말로 하면 EDA (Exploratory Data Analysis, 탐색적 데이터 분석)라고 할 수 있다.
간단한 앞서 '의사결정나무(DecisionTree)'를 해본 실습에서 사용했던 Diabates 데이터를 기반으로 이를 간단히 해보겠다.
쉽게 해보는 실습은 아래 링크를 참조!(데이터파일도 아래 링크를 통해 kaggle에서 다운받을 수 있다.
2024.01.13 - [Development/Python] - 의사결정나무 쉽게 따라해보기!(plot_tree그리기, 중요 feature 파악하기)
의사결정나무 쉽게 따라해보기!(plot_tree그리기, 중요 feature 파악하기)
머신러닝에서 많이 사용되는 방법 중 '의사결정나무'가 있다. 의사결정 나무의 장점으로는 어떤 기준으로 분류를 하는지 명확하게 확인할 수 있다는 것이다. 이에 의사결정나무(DecisionTree)를 그
hhpp.tistory.com
# 데이터 로드 및 데이터 형태 확인하기
df = pd.read_csv('data/diabates.csv')
df.shape # (768,9)
df.head()
# info를 활용하여, 데이터프레임 내 각 컬럼의 데이터타입, 결측치, 메모리사용량 등의 정보 확인
df.info() # 모두 숫자형, 결측치 없음, 메모리 사용량 54.1KB
자 이제 데이터도 확인하고, 데이터타입도 확인했다면, 어떤 분포로 값들이 있는지 확인해야한다. 생각도 없이 자연스레 바로 describe를 작성해보자!
# 기술통계 내보기
df.describe()
일반적으로 describe를 하면, 숫자형 데이터를 가지고 기술통계를 내준다. 근데 내 데이터에 문자형 데이터도 있다면 이것도 확인해야하지 않을까?
우리같은 사람들이 쉽게 사용하게 만들어주기 위해서, 대단하신 분들께서는 역시나 이러한 기능도 만들어 두었다. include='object'를 파라미터로 넘겨주면 바로 나오게 된다.
df.describe(include='object')
아쉽지만, 지금 위의 코드는 오류가 나온다. 왜나면... 지금의 diabates에는 문자형 데이터가 전무하기 때문이다....
이제야 알게 되었기에.. 글을 지우긴 아깝고... kaggle에 있는 데이터 가운데 문자데이터를 갖고 있는 데이터를 빠르게 불러와서 문자형 데이터를 기술분석해보고자 한다.
# 라이브러리를 로드합니다.
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
# 데이터로드
df = pd.read_csv("https://bit.ly/telco-csv", index_col="customerID")
df.shape #(7043, 20)
#기술분석
df.describe() # df.describe(include='number')와 동일하다.
df.shape를 통해 확인하면, 20개의 컬럼이 있지만, 문자를 기술분석해보니, 3가지의 컬럼만 나온다. 즉 나머지 17가지 컬럼은 모두 문자형을 가지고 있다는 것이다. 자 이제 문자형을 분석해보자!!
# 문자형 데이터 기술분석
df.describe(include='object')
위의 결과를 보면 알 수 있듯, describe(include='object')만으로 문자형 데이터의 특징을 확인할 수 있게 해준다.
df['gender].unique() 와 df['gender'].nunique() 등을 통해도 확인해볼 수 있지만, describe(include='object')를 사용하면 한줄로 모든 컬럼의 데이터를 빠르게 확인할 수 있다.
매우 매력적인 방법이라고 생각된다! 모두 이걸로 분석 시작하세요!
'Development > Python' 카테고리의 다른 글
의사결정나무 쉽게 따라해보기!(plot_tree그리기, 중요 feature 파악하기) (2) | 2024.01.13 |
---|---|
return으로 데이터 바로 분할하기(return_X_y=True) (0) | 2024.01.12 |
Python 자료형 - 자료형과 자료형 확인하는 법 (0) | 2023.07.20 |