ABC부트캠프

ABC 부트캠프 8일차(07.12)

attack_u 2023. 7. 13. 09:59

오늘은 pandas, numpy 라이브러리에 대해 배웠다!

 

Pandas 란?

Pandas는 파이썬에서 사용하는 데이터분석 라이브러리로, 행과 열로 이루어진 데이터 객체를 만들어 다룰 수 있게 되며 보다 안정적으로 대용량의 데이터들을 처리하는데 매우 편리한 도구이다.

 

함수

함수 기능
head() 앞부분 출력
tail() 뒷부분 출력
shape 행, 열 개수 출력
info() 변수 속성 출력
describe() 요약 통계량 출력

 

#데이터 프레임 만들기
df_mpg = pd.read_csv('mpg.csv')

#데이터프레임 복사본 만들기
df_new = df_mpg.copy()

#변수명 바꾸기
df_new = df_new.rename(columns = {'manufacturer':'manufact'}) # {원래 컬럼명 : 바꿀 컬럼명}

# 통합연비 평균 확인
mpg['total'].mean() # 통합연비 평균 확인

 

파생변수 만들기

# 통합연비 = 도시연비 + 고속도로 연비
mpg['total'] = (mpg['cty'] + mpg['hwy'])/2

조건문을 활용해 파생변수 만들기

# 통합 연비가 20이상이면 pass, 그렇지 않으면 fail 부여하는 test 파생변수 만들기
import numpy as np #numpy를 np로 사용

mpg['test'] = np.where(mpg['total'] >= 20, 'pass', 'fail') #np.where(조건식, true, false)

# 빈도표로 합격 판정 자동차수 살펴보기
count_test = mpg['test'].value_counts() # pass, fail 몇 개인지 출력

# 막대그래프로 빈도 
count_test.plot.bar() # 연비 합격 빈도 막대그래프

# x축 이름을 수평으로 만들기
count_test.plot.bar(rot = 0) #x 축 각도 설정

중첩 조건문 활용하기

# 통합 연비 기준으로 A(30이상), B(20이상), C(그외) 등급 부여하는 grade 변수 만들기
mpg['grade'] = np.where(mpg['total'] >= 30, 'A',
                        np.where(mpg['total'] >= 20, 'B', 'C'))
                        
# 빈도표와 막대그래프로 연비 등급 살펴보기
count_grade = mpg['grade'].value_counts().sort_index() # sort_index -> 알파벳 순으로 정렬
count_grade.plot.bar(rot = 0)

차량 종류(7종류)를 small. large 파생변수 만들기

# compact, subcompact, 2seater은 small, 그 외는 large롤 담는 size 파생변수 만들기
mpg['size'] = np.where((mpg['category'] == 'compact') |
                       (mpg['category'] == 'subcompact') |
                       (mpg['category'] == '2seater'), 'small', 'large')

-->
#isin을 활용하여 간단하게 구현
mpg['size'] = np.where(mpg['category'].isin(['compact', 'subcompact', '2seater']), 'small', 'large') #isin(['a', 'b', 'c']) 리스트 안에 있으면
mpg['size'].value_counts()

 

교수님이랑 조원들이랑 같이 파스타 먹었는데 완전 맛있었다!!

맛있는 곳 찾아준 조원에게 감사했다😊😊