フォルダ内のサブフォルダにも含まれるCSVファイルを全て読み込んでデータフレームとして結合するには、glob
モジュールの検索パターンを変更する必要があります。具体的には、**
パターンを使用して全てのサブディレクトリを再帰的に検索するようにします。
以下にそのコード例を示します。
import pandas as pd import glob # 指定されたフォルダのパス folder_path = '/path/to/your/folder' # 指定されたフォルダおよびサブフォルダ内のすべてのCSVファイルのリストを取得 csv_files = glob.glob(f'{folder_path}/**/*.csv', recursive=True) # 空のデータフレームを作成 combined_df = pd.DataFrame() # 各CSVファイルを読み込み、データフレームに追加 for file in csv_files: df = pd.read_csv(file) combined_df = pd.concat([combined_df, df], ignore_index=True) # 結果を表示 print(combined_df)
このコードでは、glob.glob
関数の第二引数に recursive=True
を指定することで、**
パターンが全てのディレクトリとサブディレクトリを再帰的に検索するようになります。その結果、指定したフォルダおよびそのサブフォルダ内のすべてのCSVファイルがリストとして取得され、読み込まれてデータフレームとして結合されます。
コメント