반응형
판다스 데이터프레임을 파일로 저장
판다스 데이터프레임을 파일로 저장하는 방법을 정리합니다. 판다스 라이브러리는 다양한 파일형태의 데이터를 읽고 쓸 수 있습니다. 자주사용하는 파일형태에 대해서 정리합니다.
CSV
데이터프레임을 파일로 저장 시 'to_csv'함수를 사용하고 파일에서 읽을 때 'read_csv'함수를 사용한다. 'index_col'인자를 이용하여 index로 정할 colume index를 전달한다.
import pandas as pd
# Write to the CSV file
df = pd.DataFrame({'name' : ["abc", "def"],
'age' : [10, 20]})
display(df)
df.to_csv('./person_info.csv', mode='w')
# Read from the CSV file
df_read = pd.read_csv('./person_info.csv', index_col = 0)
display(df_read)
--------------------------------------
name age
0 abc 10
1 def 20
name age
0 abc 10
1 def 20
Excel
데이터프레임을 파일로 저장 시 'to_excel'함수를 사용하고 파일에서 읽을 때 'read_excel'함수를 사용한다. excel파일로 저장 시 index=False를 설정하면 dataframe의 index는 저장되지 않고 excel의 index를 사용하여 저장됩니다.
import pandas as pd
# Write to the Excel file
df = pd.DataFrame({'name' : ["abc", "def"],
'age' : [10, 20]})
display(df)
df.to_excel('./person.xlsx', sheet_name="class 1", index=False)
# Read from the Excel file
df_read = pd.read_excel('./person.xlsx')
display(df_read)
--------------------------------------
name age
0 abc 10
1 def 20
name age
0 abc 10
1 def 20
인코딩 설정 (한글깨짐방지)
데이터프레임을 csv파일로 저장 시 'to_csv'함수를 사용하고 파일에서 읽을 때 한글이 깨져있는 경우가 있습니다. 테스트를 위해서 컬럼이름을 한글로 변경해서 csv파일로 저장합니다. 저장된 csv파일을 열어보면 한글로 설정된 컬럼이름이 아래와 같이 깨져있습니다.
import pandas as pd
# Write to the CSV file
df = pd.DataFrame({'이름' : ["abc", "def"],
'나이' : [10, 20]})
display(df)
df.to_csv('./person.csv', index=False)
# Read from the CSV file
df_read = pd.read_csv('./person.csv')
display(df_read)
이 경우 파일을 쓰고 읽을 때 한글 표시를 위한 encoding format을 설정해서 사용합니다. 아래의 코드에서는 csv파일을 쓰고 읽을 때 'encoding' 정보를 'CP949'로 전달하여 저장된 파일을 열어볼 때에도 한글이 정상적으로 출력됩니다.
df.to_csv('./person.csv', encoding='CP949', index=False)
df_read = pd.read_csv('./person.csv', encoding='CP949')
반응형
'Programming > Pandas' 카테고리의 다른 글
[Pandas] Cleaning Data (0) | 2022.12.22 |
---|---|
[Pandas] Text파일의 데이터 읽기 (0) | 2022.12.20 |
[Pandas] 데이터 결합/병합 .merge() (0) | 2022.01.08 |
[Pandas] 데이터접합 방향설정 및 이름설정 (0) | 2022.01.07 |
[Pandas] 데이터 연결 (concat), 인덱스 연결 (0) | 2022.01.07 |