파이썬에서 csv 파일 불러오는 법
설명
파이썬에서 CSV 파일을 읽는 방법은 크게 네 가지가 있다: (1) 내장 I/O만 사용, (2) 표준 라이브러리 csv 모듈, (3) pandas, (4) numpy.
코드
아래와 같은 CSV 파일을 열어보자.

내장 I/O
csv 파일을 텍스트 객체로서 불러온다.
>>> x = open('3784.csv', 'r', encoding='utf-8')
>>> x
<_io.TextIOWrapper name='3784.csv' mode='r' encoding='utf-8'>
>>> for line in x: print(line)
...
a,가,1
b,나,2
c,다,3
d,라,4
csv
각 행을 리스트로 얻는다.
>>> import csv
>>> with open('3784.csv', newline="", encoding='utf-8') as f:
... reader = csv.reader(f)
... for row in reader:
... print(row)
...
['a', '가', '1']
['b', '나', '2']
['c', '다', '3']
['d', '라', '4']
pandas
CSV 파일을 데이터 프레임으로 불러온다.
>>> import pandas as pd
>>> df = pd.read_csv('3784.csv')
>>> type(df)
<class 'pandas.core.frame.DataFrame'>
>>> df
a 가 1
0 b 나 2
1 c 다 3
2 d 라 4
>>> print(df.columns)
Index(['a', '가', '1'], dtype='object')
numpy
모든 값이 숫자라면 numpy로도 열 수는 있다. numpy 배열로 불러온다.
>>> import numpy as np
>>> data = np.loadtxt('3784.csv', delimiter=",", encoding="cp949")
>>> type(data)
<class 'numpy.ndarray'>
>>> data
array([1., 2., 3., 4., 5., 6., 7., 8., 9.])
환경
- OS: Windows11
- Version: Python 3.10.11, pandas==2.2.3, numpy==1.26.4

저희들의 저서 「줄리아 프로그래밍」이 2024 세종도서 학술부문에 선정되었습니다!

