Python
 Computer >> コンピューター >  >> プログラミング >> Python

PythonでpandasのDataFrameをCSVファイルに書き込む方法【to_csv()の使い方】

pandasのDataFrameをCSVファイルに出力する基本

PythonでpandasのDataFrameをCSVファイルに書き込むには、to_csv()メソッドを使用します。このメソッドは、DataFrameの内容をそのままCSV形式で保存できる、最もシンプルで一般的な方法です。

まずはサンプルデータとして、リストを値にもつ辞書を作成しましょう。

# リストの辞書を定義
d = {'Car': ['BMW', 'Lexus', 'Audi', 'Mercedes', 'Jaguar', 'Bentley'],
     'Date_of_purchase': ['2020-10-10', '2020-10-12', '2020-10-17', '2020-10-16', '2020-10-19', '2020-10-22']
}

次に、この辞書をもとにpandasのDataFrameを作成します。

dataFrame = pd.DataFrame(d)

CSVファイルの出力先をデスクトップに設定する場合は、以下のように記述します。to_csv()の引数に保存先のパスとファイル名を渡すだけで、CSVファイルが自動的に生成されます。

dataFrame.to_csv("C:\\Users\\amit_\\Desktop\\SalesRecords.csv")

完全なサンプルコード

ここまでの手順をすべてまとめたコード例がこちらです。

import pandas as pd

# リストの辞書を定義
d = {'Car': ['BMW', 'Lexus', 'Audi', 'Mercedes', 'Jaguar', 'Bentley'],
     'Date_of_purchase': ['2020-10-10', '2020-10-12', '2020-10-17', '2020-10-16', '2020-10-19', '2020-10-22']
}

# 辞書からDataFrameを作成
dataFrame = pd.DataFrame(d)
print("DataFrame...\n", dataFrame)

# DataFrameをSalesRecords.csvとして書き込み
dataFrame.to_csv("C:\\Users\\amit_\\Desktop\\SalesRecords.csv")

# 完了メッセージを表示
print("The output csv file written successfully and generated...")

実行結果

上記のコードを実行すると、以下のような出力が得られます。

DataFrame...
        Car   Date_of_purchase
0       BMW         2020-10-10
1      Lexus         2020-10-12
2       Audi         2020-10-17
3   Mercedes         2020-10-16
4     Jaguar         2020-10-19
5    Bentley         2020-10-22
The output csv file written successfully and generated...

実行後、指定した場所に「SalesRecords.csv」が正常に生成され、ファイルの中身は以下のようにDataFrameのデータがそのまま記録されます。

PythonでpandasのDataFrameをCSVファイルに書き込む方法【to_csv()の使い方】

覚えておくと便利なto_csv()の主なオプション

  • index=False:行番号(インデックス)をCSVに出力せずに保存できます。
  • encoding="utf-8-sig":Excelで開いたときに日本語が文字化けするのを防げます。
  • sep=",":区切り文字を変更したい場合に指定します(デフォルトはカンマ)。

たとえばインデックスを除外してUTF-8(BOM付き)で保存したい場合は、次のように書きます。

dataFrame.to_csv("C:\\Users\\amit_\\Desktop\\SalesRecords.csv", index=False, encoding="utf-8-sig")
  1. PythonでPandas DataFrameを棒グラフとして可視化する方法

    データ分析において、PandasのDataFrameを視覚的に表現することは非常に重要です。この記事では、CSVファイルから読み込んだデータをmatplotlibを使って棒グラフ(バーチャート)として表示する方法を解説します。 前提条件:サンプルデータ 今回は以下のような内容のCSVファイル(SalesData.csv)を使用します。 Car Reg_Price 0 BMW 2000 1 Lexus 1500 2 Audi 1500 3 Jaguar 2000 4 Mustang

  2. Python Pandas:read_csvのskipinitialspaceでCSV読み込み時の先頭スペースをスキップする方法

    PandasでCSVの先頭スペースをスキップするには?PandasでDataFrameを読み込む際、データの先頭にある余分な空白(初期スペース)を取り除きたい場合は、read_csv()メソッドのskipinitialspaceパラメータを使用します。このパラメータをTrueに設定すると、区切り文字(カンマなど)の直後にある空白が自動的にスキップされます。CSVファイルの中には、カンマの後に不要なスペースが混ざっているケースが少なくありません。そのまま読み込むと、列名や値の先頭に空白が残り、条件検索やグループ化の際にデータが正しく一致しない原因となります。skipinitialspace=Tr