Pandas DataFrame을 CSV에 작성

Suraj Joshi 2023년1월30일
  1. pandas.DataFrame.to_csv()함수 구문
  2. pandas.DataFrame.to_csv()함수를 사용하여 CSV 파일에 DataFrame 쓰기
  3. 색인을 무시하고pandas.DataFrame.to_csv()함수를 사용하여 CSV 파일에 DataFrame 쓰기
  4. pandas.DataFrame.to_csv()함수에서 구분자를 지정합니다
Pandas DataFrame을 CSV에 작성

이 튜토리얼에서는pandas.DataFrame.to_csv()함수를 사용하여 CSV 파일에 DataFrame을 작성하는 방법을 설명합니다. pandas.DataFrame.to_csv()함수는 DataFrame의 항목을 CSV 파일에 씁니다.

pandas.DataFrame.to_csv()함수 구문

pandas.DataFrame.to_csv(
    path_or_buf=None,
    sep=",",
    na_rep="",
    float_format=None,
    columns=None,
    header=True,
    index=True,
    index_label=None,
    mode="w",
    encoding=None,
    compression="infer",
    quoting=None,
    quotechar='""',
    line_terminator=None,
    chunksize=None,
    date_format=None,
    doublequote=True,
    escapechar=None,
    decimal=".",
)

pandas.DataFrame.to_csv()함수를 사용하여 CSV 파일에 DataFrame 쓰기

import pandas as pd

mid_term_marks = {
    "Student": ["Kamal", "Arun", "David", "Thomas", "Steven"],
    "Economics": [10, 8, 6, 5, 8],
    "Fine Arts": [7, 8, 5, 9, 6],
    "Mathematics": [7, 3, 5, 8, 5],
}


mid_term_marks_df = pd.DataFrame(mid_term_marks)

print(mid_term_marks_df)

출력:

  Student  Economics  Fine Arts  Mathematics
0   Kamal         10          7            7
1    Arun          8          8            3
2   David          6          5            5
3  Thomas          5          9            8
4  Steven          8          6            5

그런 다음 DataFrame mid_term_marks_df를 CSV 파일에 씁니다.

import pandas as pd

mid_term_marks = {
    "Student": ["Kamal", "Arun", "David", "Thomas", "Steven"],
    "Economics": [10, 8, 6, 5, 8],
    "Fine Arts": [7, 8, 5, 9, 6],
    "Mathematics": [7, 3, 5, 8, 5],
}


mid_term_marks_df = pd.DataFrame(mid_term_marks)

mid_term_marks_df.to_csv("midterm.csv")

midterm.csv라는 파일을 만들고 행의 인접한 값이 쉼표 ,로 구분 된 파일에 DataFrame 값을 씁니다.

midterm.csv 파일의 내용은 다음과 같습니다.

,Student,Economics,Fine Arts,Mathematics
0,Kamal,10,7,7
1,Arun,8,8,3
2,David,6,5,5
3,Thomas,5,9,8
4,Steven,8,6,5

기본적으로pandas.DataFrame.to_csv()함수는 DataFrame의 색인도 CSV에 기록하지만 색인이 모든 경우에 항상 유용한 것은 아닙니다.

색인을 무시하고pandas.DataFrame.to_csv()함수를 사용하여 CSV 파일에 DataFrame 쓰기

인덱스를 무시하려면pandas.DataFrame.to_csv()함수에서index=False를 설정할 수 있습니다.

import pandas as pd

mid_term_marks = {
    "Student": ["Kamal", "Arun", "David", "Thomas", "Steven"],
    "Economics": [10, 8, 6, 5, 8],
    "Fine Arts": [7, 8, 5, 9, 6],
    "Mathematics": [7, 3, 5, 8, 5],
}


mid_term_marks_df = pd.DataFrame(mid_term_marks)

mid_term_marks_df.to_csv("midterm.csv", index=False)

이 경우midterm.csv 파일의 내용은 다음과 같습니다.

Student,Economics,Fine Arts,Mathematics
Kamal,10,7,7
Arun,8,8,3
David,6,5,5
Thomas,5,9,8
Steven,8,6,5

때때로 DataFrame의 내용을 CSV 파일에 쓰는 동안UnicodeEncodeError가 발생할 수 있습니다. 이 경우utf-8 인코딩 형식을 활성화하는encoding='utf-8'을 설정할 수 있습니다.

pandas.DataFrame.to_csv()함수에서 구분자를 지정합니다

기본적으로 DataFrame을 CSV 파일에 쓰는 동안 값은 쉼표로 구분됩니다. 다른 기호를 구분 기호로 사용하려면sep 매개 변수를 사용하여 지정할 수 있습니다.

import pandas as pd

mid_term_marks = {
    "Student": ["Kamal", "Arun", "David", "Thomas", "Steven"],
    "Economics": [10, 8, 6, 5, 8],
    "Fine Arts": [7, 8, 5, 9, 6],
    "Mathematics": [7, 3, 5, 8, 5],
}


mid_term_marks_df = pd.DataFrame(mid_term_marks)

mid_term_marks_df.to_csv("midterm.csv", index=False, sep="\t")

이 경우midterm.csv 파일의 내용은 다음과 같습니다.

Student Economics Fine Arts Mathematics
Kamal 10  7 7
Arun  8 8 3
David 6 5 5
Thomas  5 9 8
Steven  8 6 5

여기서 값은 탭으로 구분됩니다.

작가: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

관련 문장 - Pandas DataFrame