ホームページ >バックエンド開発 >Python チュートリアル >Python で複数の CSV ファイルを単一の Pandas DataFrame に結合するにはどうすればよいですか?

Python で複数の CSV ファイルを単一の Pandas DataFrame に結合するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-28 14:02:10894ブラウズ

How Can I Combine Multiple CSV Files into a Single Pandas DataFrame in Python?

Python で複数の CSV ファイルを単一の DataFrame に結合する

このタスクの目標は、複数の CSV ファイルをディレクトリから単一の pandas DataFrame にインポートすることです。これを実現する方法は次のとおりです:

必要なライブラリのインポート

まず、ファイル処理とデータ操作に必要なライブラリをインポートします:

import pandas as pd
import glob
import os

CSV ファイルの読み取りと連結

CSV ファイルを読み取って連結するには、次の手順に従います。手順:

  1. ファイル名の取得: glob.glob() を使用して、指定されたディレクトリ内の CSV ファイル名のリストを取得します。
  2. 読み取りファイルとデータフレームの作成: 各 CSV ファイルをパンダに読み込みますDataFrame.
  3. Concatenate DataFrames: pd.concat() メソッドを使用して、すべての DataFrame を 1 つの DataFrame に連結します。

連結用のコード

これらを組み合わせたサンプルコードは次のとおりです手順:

# Get file names
path = r"C:\DRO\DCL_rawdata_files"
filenames = glob.glob(os.path.join(path, "*.csv"))

dfs = []
for filename in filenames:
    dfs.append(pd.read_csv(filename, header=0))

# Concatenate data into one DataFrame
big_frame = pd.concat(dfs, ignore_index=True)

DataFrame への ID の追加

異なる CSV ファイルのデータを区別するには、各ファイルを識別するための新しい列を追加します。そのためのいくつかのオプションを次に示します。

オプション 1: ファイル名を列として追加します

for df in dfs:
    df["file_name"] = df.file_name.str.split("\").str[-1].str.split(".")[0]

オプション 2: ファイル ソースを列として追加しますコラム

df["Source"] = np.repeat([f"File{i}" for i in range(len(dfs))], [len(df) for df in dfs])

結論

これらの手順に従うことで、複数の CSV ファイルを Python の単一のまとまった DataFrame に効率的にインポートでき、さまざまなデータの分析と処理が容易になります。ソース。

以上がPython で複数の CSV ファイルを単一の Pandas DataFrame に結合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。