본문 바로가기
카테고리 없음

[240912] 데이터 다듬기 #3 판다스 데이터 프레임 탐색

by 황오독 2024. 9. 12.
더보기

들어가기전, 익숙해져야 할 것들

- head(): 상위 데이터 확인
- tail(): 하위 데이터 확인
- shape: 데이터프레임 크기
- index: 인덱스 정보 확인
- values: 값 정보 확인
- columns: 열 정보 확인
- dtypes: 열 자료형 확인
- info(): 열에 대한 상세한 정보 확인
- describe(): 기술통계정보 확인

1. 앞, 뒤 일부 데이터, 크기 확인

# 상위 10개 행 데이터
tip.head(10)

# 하위 3개 행 데이터
tip.tail(3)

# 인덱스 확인
tip.index

# 값 확인
tip.values

# 열 확인
tip.columns

# 열 자료 형 확인
tip.dtypes

# 열 자료형, 값 개수 확인
tip.info()

# 기술 통계
tip.describe()

** 여기선 아마 info()와 describe()가 가장 중요할 듯 하다.

자료 해석

info()
인덱스가 0-6이 존재하고,
열제목은 total_bill, tip, sex, smoker, day, time, size로 확인할 수 있다.
또한 공백없이 244행이 채워져 있고, 자료형도 확인할 수 있다.
describe()
데이터 정리, 요약, 해석, 표현 등을 통해 데이터프레임이 갖는 특성을 나타낸 정보이다.
개수, 평균, 표준편차, 최솟값, 사분위값, 최댓값을 표시한다.

tip.describe().T를 사용하면
열과 행이 뒤집혀서 나와 보기 더 편할 수 있다.

 

2. 정렬해서 보기

- index를 기준으로 정렬하는 방법과, 특정 column을 기준으로 정렬하는 방법

# 단일 열 정렬
tip.sort_values(by='total_bill', ascending=False).head(5)

# 복합 열('total_bill', 'tip') 정렬
tip.sort_values(['total_bill', 'tip'], ascending=[False, True])

# ascending=True는 오름차순 정렬 (디폴트값)
# ascending=False는 내림차순 정렬

 

 

3. 기본 집계 : 고윳값, 합, 평균, 최댓값, 최솟값 등 확인

# unique() 메서드로 고윳값 확인, 결과값은 배열 형태

# day 열 고윳값 확인
top['day'] # 시리즈로 나옴. (하나의 열밖에 가지지 못하기 때문)
top[['day']] # 데이터프레임. (여러 열을 가질 수 있는 의지를 보여주면 됨!)

# 시리즈는 columns가 없고, 인덱스와 값으로 나타난다.
# 고윳값
tip['day'].unique()

# 결과 출력
array(['Sun', 'Sat', 'Thur', 'Fri'], dtype=object)

# 고윳값 개수 확인
tip['day'].value_counts()

# 시각화를 위하여
tip['day'].value_counts.plot(kind='bar')

 

코드 출력 결과

# 최빈값 확인
tip['day'].mode()

 

* 이후에 기본 통계 메서드

- df.sum(axis=0) : 열 기준 모든 행의 합

- df.sum(axis=1) : 행 기준 모든 열의 합

# total_bill 열 합계 조회
tip['total_bill'].sum()

# total_bill 열 합계 조회
tip['total_bill'].sum()

# total_bill, tip 열 평균값 확인
tip[['total_bill', 'tip]].mean()

# total_bill, tip 열 중앙값 확인
tip[['total_bill', 'tip]].median()

# max_temp 열 최댓값
temp['max_temp'].max()

# min_temp, ext_min_temp 열 최솟값
temp[['min_temp','ext_min_temp']].min()