상세 컨텐츠

본문 제목

[개미의 걸음 Pandas 3차시] DataFrame으로 로딩하기(read, head, tail, append)

Python

by IT개미 데이터 2021. 1. 3. 07:07

본문

728x90

DataFrame

여러 개의 행과 열로 이루어진 2차원 데이터 구조

  • 판다스에서 데이터를 가져올때는 read_csv( ), read_excel( ), read_table( ), read_fwf( ) 등을 사용

 

데이터 가져오기

import pandas as pd

df = pd.read_csv('파일명.csv', sep='\t', header =1, index_col=0, encoding = 'euc-kr', thousands=',')
파일명 해당 csv파일과 판다스로 작업할 파일이 함께 있는 경우 파일명만 입력
다른 파일에 있는 경우에는 파일 경로를 함께 지정해주어야 함
seq 구분 문자를 입력하면됨(생략할 경우, 자동으로 콤마로 할당)
위의 예에서는 탭으로 필드를 구분하겠다는 뜻! 
header 컬럼명의 위치를 결정
0: 첫번째 행의 데이터를 컬럼명으로 인식[생략 가능]
1: 두번째 행의 데이터부터 컬럼명으로 인식
index_col 인덱스가 될 column을 지정
생략할 경우 임의의 인덱스[0,1,2...]가 지정됨
0 : 첫번째 컬럼의 데이터들이 인덱스로 지정됨
1 : 두번째 컬럼의 데이터들이 인덱스로 지정됨
encoding 컬럼명이 한글로 되어 있을 경우 'euc-kr'로 지정하면 한글 깨짐 없이 볼 수 있음
thousands 천단위 구분 콤마를 없애고 데이터를 가져올 수 있음

 

데이터 프레임으로 가져온 데이터 보기

변수명 해당 변수명을 입력하면 일부 데이터 확인 가능
ex> df
head(개수) 데이터 중 앞부분의 일부만 보고 싶을 때
지정한 개수만큼의 앞부분 데이터를 보여줌[생략할 경우 5개]
ex> df.head(50)  →  50개의 앞부분 데이터를 보여줌
tail(개수) 데이터 중 뒷부분의 일부만 보고 싶을 때
지정한 개수만큼의 앞부분 데이터를 보여줌[생략할 경우 5개]
ex> df.tail(50)  →  50개의 뒷부분 데이터를 보여줌

 

여러 개의 데이터 프레임 합치기

컬럼 명과 개수가 동일한 여러 개의 데이터프레임을 가져올 때, 두 개의 데이터 프레임을 합침

  • ex> 월별 자료 합치기, 연도별 자료 합치기
temp = pd.read_csv(' 추가할 파일명.csv', sep='\t', header =1, index_col=0, encoding = 'euc-kr', thousands=',')
df = df.append(temp, ignore_index=True)

 

 

파일명이 유사한 데이터 가져오기

for 구문을 사용하면 파일명이 유사한 여러개의 데이터를 한꺼번에 가져와 하나의 데이터 프레임으로 만들기

  • ex> 2013~2019년 csv파일을 가져와 하나의 데이터 프레임으로 만들기 
df = pd.DataFrame()

for
i in range(3,10):
    temp = pd.read_csv("201{}.csv".format(i), encoding="euc-kr", header=0, thousands=',')
    df = df.append(temp, ignore_index=True)

 

728x90

관련글 더보기

댓글 영역