Search

Python 16. Pandas - basic(2)

Created at
2019/04/05
Updated at
2021/01/20
Tags
Keywords
Pandas
3 more properties
목차
기본적으로 Series와 DataFrame을 만드는 법을 줄 살펴본 지난 포스팅 Pandas - Basic (1)에 이어 이번에는 Basic (2)편을 준비해보았다. 우선 실제로 데이터를 다룰 때 많이 사용하게 되는 groupby, select, merge에 대해 정리해보고, 이어서 csv나 excel 파일로부터 데이터를 불러오고 내보내는 방법에 대해 다루어보자.

1. groupby

DataFrame에서 특정 column의 unique 값만 가지고 새로운 DataFrame을 생성
size 방법: dfname.groupby("column_name").size()
agg 방법: dfname.groupby("column_name").agg('min'|'max'|'mean' 등)
import pandas as pd
Python
복사

1.1 groupby - size

각 이름별이 몇 번 나왔는지 counts 컬럼이 추가된 데이터프레임 만들기
syntax: dfname.groupby("column_name").size()
data가 몇 번 나오는지 count
Series로 출력됨

1.2 groupby - agg

각 이름별 age의 최소값/최대값/평균 등을 나타내는 column을 나타내기
syntax: dfname.groupby("column_name").agg('min'|'max'|'mean' 등)

2. select

2.1 head, tail

head: dataframe 상단 n개 row를 보여줌 (default 5줄)
syntax: df.head(n=5)
tail: dataframe 하단 n개 row를 보여줌 (default 5줄)
syntax: df.tail(n=5)

2.2 indexing, slicing

2.3 index, column으로 데이터 호출

df[index][column]으로 자료 호출 (two-level column도 가능)

3. merge

merge란 sql의 join과 같은 개념
두 개의 데이터 프레임을 하나로 합쳐서 데이터를 보여줄 수 있음
그럼, 아래와 같이 두 개의 데이터프레임을 만들어서 merge를 해보자.
user_df: 아이디, 이름, 나이 데이터 프레임 생성
money_df: 아이디, 돈으로 데이터 프레임 생성

4. input / output

csv 파일: 쉼표(,)로 값을 구분하는 파일 타입
엑셀 파일:
인코딩 타입이 UTF-8이 아님
영어가 아닌 다른 언어를 저장하거나 로드할 때 인코딩을 주의해야 함

4.1 csv 파일 읽고 내보내기

4.2 excel 파일 읽고 내보내기

우선 다음의 패키지를 설치한다.
$ pip install xlrd
$ pip install openpyxl
참고자료
패스트캠퍼스, ⟪데이터사이언스스쿨 8기⟫ 수업자료