본문 바로가기
Study/Data Science 개인 공부

Do it! 데이터 분석을 위한 판다스 입문 2장

by 주원주 2023. 6. 23.

02 판다스 시작하기

02-1 데이터 집합 불러오기

  • 판다스는 데이터를 효율적으로 다루기 위해 시리즈와 데이터프레임이라는 자료형 사용
  • 데이터프레임이 엑셀 시트와 같은 개념이라하면 시리즈는 시트의 열 1개를 의미
  • 데이터프레임은 시리즈들이 각 요소가 되는 딕셔너리와 마찬가지
  • read_csv 메서드: 데이터 집합을 읽어 들여와 데이터프레임이라는 자료형으로 반환
  • shape: 데이터프레임의 행과 열 크기 저장
  • columns: 데이터 프레임의 열 이름 확인
  • 데이터프레임을 구성하는 값의 자료형은 데이터프레임의 dtypes 속성이나 info 메서드로 확인 가능
    (print(df.columns), print(df.info()))
  • 판다스 자료형 vs 파이썬 자료형
판다스 자료형 파이썬 자료형 설명
object string 문자열
int64 int 정수
float64 float 소수점을 가진 숫자
datetime64 datetime 파이썬 표준 라이브러리인 datetime()이 반환되는 자료형

<실습 코드>

 

02-2 데이터 추출하기

  • 시리즈 데이터타입도 head, tail 메서드로 가장 앞이나 뒤에 있는 5개의 데이터 출력 가능 
  • 리스트에 열 이름 전달하면 여러 개의 열 한 번에 추출
  • loc, iloc >> 행 단위 데이터 추출
속성 설명
loc 인덱스 기준으로 행 데이터 추출
iloc 행 번호 기준으로 행 데이터 추출
  • 인덱스: 행 데이터가 추가, 삭제되면 언제든 변화 가능, first, second, third와 같은 문자열로 지정 가능
  • 행 번호: 데이터의 순서를 따라가기 때문에 정수만으로 데이터를 조회하거나 추출 가능, 실제 데이터프레임에서는 확인 불가능한 값
  • 마지막 행 데이터 인덱스 >> shape[0]에 행 크기가 저장되어 있다는 점을 이용 (shape[0]값 - 1)
  • 또는 tail 메서드 이용 >> tail 메서드의 인자 n에 1 전달 (2 전달하면 2개의 데이터 추출)
  • tail 메서드 loc 속성이 반환하는 데이터의 자료형은 다르다 (loc 속성은 시리즈, tail 메서드는 데이터프레임)
  • iloc 속성은 음수를 사용해도 데이터 추출 가능(=/= loc 속성), 데이터프레임에 아예 존재하지 않는 행 번호 전달하면 오류 발생, -1 전달하면 마지막 행 데이터 추출
  • loc, iloc 속성 모두 추출할 데이터의 행을 먼저 지정하고 그 다음에 열 지정 ex. df.loc[[행], [열]] 또는 df.iloc[[행], [열]]
  • 행, 열을 지정하는 방법 >> 슬라이싱 구문 사용 또는 range 메서드 사용
    • range 메서드: 지정한 구간의 정수 리스트(제네레이터) 반환 ex. range(5) >> [1, 2, 3, 4, 5] (제네레이터를 정수리스트로 변환)
    • range(0, 6, 2) (3개 인자 전달) >> 0부터 5까지 2만큼 건너뛰는 제네레이터 생성 (범위가 0~5인 짝수)
    • iloc 속성의 열 지정값에는 정수 리스트를 전달해야 한다는 점과 range 메서드의 반환값이 정수 리스트인 점 이용
  • 반드시!! loc 속성의 열 지정값문자열 리스트, iloc 속성의 열 지정값정수 리스트 전달하기
  • 실무에서는 range 메서드보다 간편하게 사용 가능한 파이썬 슬라이싱 구문을 더 선호
  • list(range(3)) 과 [:3]의 결괏값은 동일

02-3 기초적인 통계 계산하기

  • 그룹화한 데이터의 자료형은 DataFrameGroupBy
  • 빈도수: 그룹화한 데이터의 개수
    • 데이터의 빈도수는 nunique 메서드를 사용하여 구함

02-4 그래프 그리기

 

 

출처: Do it! 데이터 분석을 위한 판다스 입문 (Chen, Daniel Y. 지음)

https://www.yes24.com/Product/Goods/64625506