728x90
이번 글에서는 CSV파일을 읽어오는 방법을 알아보고자 한다.
CSV(comma separated values) 파일은 데이터 값을 쉼표(,)로 구분하는 파일이다.
쉼표(,)로 열을 구분하고 줄바꿈으로 행을 구분한다. 판다스 read_csv() 함수에 확장자(.csv)를 포함하여 파일 경로(파일명)를 입력하면 CSV 파일을 읽어와서 데이터프레임으로 변환한다.
CSV 파일 -> 데이터프레임: pandas.read_csv("파일 경로(이름)")
CSV 파일을 읽어올 때 추가적으로 행과 열 이름값 설정을 할 수 있다.
header는 열 이름으로 사용할 행을 지정하는 옵션이다.
pandas.read_csv("파일 경로(이름)", header=?)에서 ?에 1을 넣으면 1행을 열 이름으로 지정한다. 기본값은 0이며 None을 넣어서 행을 열 지정하지 않을 수도 있다.
index_col은 행 인덱스가 되는 열을 지정하는 옵션이다.
pandas.read_csv("파일 경로(이름") index_col=?)에서 ?에 'c0'를 넣으면 'c0' 열을 인덱스로 지정한다. None 값을 대입하면 인덱스를 지정하지 않는다.
아래 코드는 위 csv 파일을 읽어오는 코드입니다.
import pandas as pd
file_path = './read_csv.csv'
# header, index_col 기본 값
df1 = pd.read_csv(file_path)
print(df1)
print('\n')
# header=None
df2 = pd.read_csv(file_path, header=None)
print(df2)
print('\n')
# index_col = None
df3 = pd.read_csv(file_path, index_col=None)
print(df3)
print('\n')
# index_col = 'c0'
df4 = pd.read_csv(file_path, index_col='c0')
print(df4)
read_csv 함수 옵션
옵션 | 설명 |
path | 파일의 위치(파일명 포함), URL |
sep(또는 delimiter) | 텍스트 데이터를 필드별로 구분하는 문자 |
header | 열 이름으로 사용될 행의 번호(기본값은 0) header가 없고 첫 행부터 데이터가 있는 경우 None으로 지정 가능 |
index_col | 행 인덱스로 사용할 열의 번호 또는 열 이름 |
names | 열 이름으로 사용할 문자열의 리스트 |
skiprows | 처음 몇 줄을 skip할 것인지 설정(숫자 입력) skip하려는 행의 번호를 담은 리스트로 설정 가능(예: [1, 3, 6]) |
parse_dates | 날짜 텍스트를 datetime64로 변환할 것인지 설정(기본값은 False) |
skip_footer | 마지막 몇 줄을 skip할 것인지 설정(숫자 입력) |
encoding | 텍스트 인코딩 종류를 지정(예: 'utf-8') |
CSV 파일에 따라서 쉼표(,) 대신 탭(\t)이나 공백(" ")으로 텍스트를 구분하기도 한다. 이때는 구분자(sep 또는 delimiter) 옵션을 알맞게 입력해야 한다.
728x90
'Data Engineering > 데이터 분석' 카테고리의 다른 글
T-test (T검정) (0) | 2020.09.02 |
---|---|
상관 분석 (0) | 2020.09.02 |
외부 파일 읽어오기 - 2 (Excel, JSON) (0) | 2020.05.29 |
데이터프레임(Data Frame) 연산 (0) | 2020.05.29 |
시리즈(Series) 연산 (0) | 2020.05.29 |