[데이터 입출력/외부 파일 읽어오기] CSV 파일
2022. 10. 20. 13:00
CSV(comma-separated values)는 데이터 값을 쉼표로 구분하고 있는 텍스트 파일이라는 뜻이다.
쉼표로 열을 구분하고 줄바꿈으로 행을 구분한다.
pandas.read_csv('파일 경로(이름)')
read_csv() 함수에 확장자를 포함한 파일 경로(이름)을 입력하면 CSV파일을 읽어서 데이터프레임으로 반환한다.
read_csv() 함수의 header 옵션은 데이터프레임의 열 이름으로 사용할 행을 지정한다.
기본 값은 0행을 지정하도록 되어 있다.
header 옵션에 None을 입력하면 열 이름은 정수로 표현된다.
index_col 옵션은 데이터프레임의 행 인덱스가 되는 열을 지정한다.
index_col 옵션을 지정하지 않으면 행 인덱스는 정수가 자동으로 설정된다.
위 CSV 파일을 예제로 사용할 것이다.
# 예제 2-1
import pandas as pd
file_path = 'read_csv_sample.csv'
df1 = pd.read_csv(file_path)
print(df1)
print('\n')
df2 = pd.read_csv(file_path, header=None)
print(df2)
print('\n')
df3 = pd.read_csv(file_path, index_col=None)
print(df3)
print('\n')
df4 = pd.read_csv(file_path, index_col='c0')
print(df4)
df3의 경우 header 옵션을 지정해주지 않아 0행이 자동으로 header로 지정된 것을 볼 수 있다.
df4의 경우 index_col='c0' 옵션을 사용하여 'c0' 열이 행 인덱스가 되는 것을 볼 수 있다.
CSV 파일에 따라서는 쉼표(,)대신 탭(\t)이나 공백(' ')으로 텍스트를 구분하기도 한다.
이때는 구분자(sep 또는 delimiter) 옵션을 알맞게 입력해야 한다.
아래 표는 read_csv() 함수의 옵션을 정리해놓은 표이다.
옵션 | 설명 |
path | 파일의 위치(파일명 포함), URL |
sep(또는 delimiter) | 텍스트 데이터를 필드별로 구분하는 문자 |
header | 열 이름으로 사용될 행의 번호(기본값은 0) header가 없고 첫 행부터 데이터가 있는 경우 None으로 지정 가능 |
index_col | 행 인덱스로 사용할 열의 번호 또는 열 이름 |
names | 열 이름으로 사용할 문자열의 리스트 |
skiprows | 처음 몇 줄을 skip할 것인지 설정(숫자 입력) skip하려는 행의 번호를 담은 리스트로 설정 가능(ex: [1, 3, 5]) |
parse_dates | 날짝 텍스트를 datetime64로 변환할 것인지 설정(기본값은 False) |
skip_footer | 마지막 몇 줄을 skip할 것인지 설정(숫자 입력) |
encoding | 텍스트 인코딩 종류를 지정(ex: 'utf-8') |
![]() |
|
'공부 > 파이썬 머신러닝 판다스 데이터 분석' 카테고리의 다른 글
[데이터 입출력/외부 파일 읽어오기] JSON 파일 (0) | 2022.10.21 |
---|---|
[데이터 입출력/외부 파일 읽어오기] Excel 파일 (0) | 2022.10.21 |
[데이터 입출력/외부 파일 읽어오기] (0) | 2022.10.20 |
[판다스 입문/산술연산] 데이터프레임 연산 (0) | 2022.10.18 |
[판다스 입문/산술연산] 시리즈 연산 (0) | 2022.10.18 |