파이썬에서 CSV 파일로 데이터를 저장하는 방법을 설명하도록 하겠습니다.
CSV(Comma-Separated Values) 파일은 데이터를 쉼표(,)로 구분하여 저장하는 텍스트 파일 형식입니다. 제가 주로 사용하는 방식은 두 가지가 있습니다. 한 가지는 csv 모듈을 사용하거나 pandas를 활용하는 방식입니다.
1. CSV 모듈 활용하기
먼저, CSV 파일에 저장할 데이터를 준비하겠습니다. 아래와 같은 예시 데이터를 사용해보겠습니다.
data = [
['Alice', 25, '서울'],
['Bob', 30, '뉴욕'],
['Charlie', 35, '런던']
]
이제 이 데이터를 CSV 파일로 저장하는 예시 코드를 작성해 보겠습니다.
import csv
# 데이터 정의
data = [
['Alice', 25, '서울'],
['Bob', 30, '뉴욕'],
['Charlie', 35, '런던']
]
# CSV 파일로 데이터 저장
with open('example.csv', mode='w', newline='') as file:
writer = csv.writer(file)
writer.writerow(['이름', '나이', '도시']) # 열 이름 쓰기
for row in data:
writer.writerow(row) # 각 행 쓰기
위 코드에서 csv.writer를 사용하여 CSV 파일을 작성합니다. mode='w'는 파일을 쓰기 모드로 열고, newline=''는 라인 끝 문자를 처리하는 옵션입니다.
이 코드를 실행하면 'example.csv'라는 파일이 생성되고, 내용은 다음과 같습니다.
이름,나이,도시
Alice,25,서울
Bob,30,뉴욕
Charlie,35,런던
2. Pandas 모듈 활용하기
파이썬에서 판다스를 사용하여 데이터프레임을 CSV 파일로 저장하는 방법을 예시와 함께 설명하겠습니다. 먼저, 다음과 같은 예제 데이터프레임을 만들어보겠습니다.
import pandas as pd
data = {'이름': ['Alice', 'Bob', 'Charlie'],
'나이': [25, 30, 35],
'도시': ['서울', '뉴욕', '런던']}
df = pd.DataFrame(data)
이제 이 데이터프레임을 CSV 파일로 저장하겠습니다.
# 데이터프레임을 CSV 파일로 저장
df.to_csv('example.csv', index=False)
위 코드에서 to_csv 함수를 사용하여 데이터프레임을 CSV 파일로 저장하였습니다. 이때, index=False 옵션을 사용하여 인덱스 열을 저장하지 않도록 설정했습니다.
CSV 파일이 성공적으로 저장되었다면, 같은 디렉터리에 'example.csv'라는 파일이 생성됩니다. 이 파일을 텍스트 에디터나 스프레드시트 프로그램으로 열어보면 다음과 같은 내용을 확인할 수 있습니다:
이름,나이,도시
Alice,25,서울
Bob,30,뉴욕
Charlie,35,런던
필요에 따라 파일 이름과 저장 경로를 변경할 수 있습니다.
2-1. to_csv 함수의 옵션들
다양한 옵션을 사용하여 CSV 파일을 원하는 형식으로 저장할 수 있습니다. 아래는 몇 가지 주요 옵션들입니다:
path_or_buf: CSV 파일의 경로 또는 파일 객체를 지정합니다. 파일 경로를 지정하면 해당 경로에 파일을 저장하고, 파일 객체를 지정하면 파일 객체에 데이터를 쓸 수 있습니다.
sep: 필드(칼럼)를 구분하는 구분자를 지정합니다. 기본값은 쉼표(,)입니다.
index: 데이터프레임의 인덱스를 CSV 파일에 포함할지 여부를 결정합니다. 기본값은 True이며, False로 설정하면 인덱스가 저장되지 않습니다.
header: 열 이름(칼럼 레이블)을 CSV 파일에 포함할지 여부를 결정합니다. 기본값은 True이며, False로 설정하면 열 이름이 저장되지 않습니다.
encoding: 파일 인코딩을 설정합니다. 주로 'utf-8', 'cp1252' 등을 사용합니다.
decimal: 실수 값의 소수점 구분자를 설정합니다. 기본값은 '.'입니다.
예를 들어, 위의 예제 데이터프레임을 탭(Tab)으로 구분된 파일로 저장하고 인덱스와 열 이름을 포함하지 않는다면 다음과 같이 옵션을 설정할 수 있습니다:
'파이썬 > 파이썬 기초' 카테고리의 다른 글
[파이썬 Python] Pandas 기본 명령어 (판다스, 데이터 프레임) (0) | 2023.08.27 |
---|---|
[파이썬 python] 패키지 버전 확인 방법 (package pip) (0) | 2023.08.27 |
[파이썬 Python] csv 파일 불러오기 (pandas) (0) | 2023.08.27 |
[파이썬 Python] 텍스트 파일로 저장하기 (text, open) (0) | 2023.08.27 |
[파이썬 python] 텍스트 파일 불러오기 (Open, text) (0) | 2023.08.27 |