Pythonは、その強力なライブラリと簡潔な文法により、データ分析やファイル操作に広く使用されています。特に、pandasライブラリは、データフレームという強力なデータ構造を提供し、データの読み込み、操作、分析を容易にします。
この記事では、Pythonとpandasを使用して複数のファイルを結合する方法について説明します。
pandasを使用した複数のCSVファイルの結合
複数のCSVファイルを結合する一般的なシナリオは、同じ形式のデータが複数のファイルに分散している場合です。以下に、pandasを使用して複数のCSVファイルを結合する方法を示します。
import pandas as pd
import glob
csv_files = glob.glob('data/*.csv')
data_list = []
for file in csv_files:
df = pd.read_csv(file)
# 列名の.を_に変更
df = df.rename(columns=lambda x: x.replace('.', '_'))
data_list.append(df)
df = pd.concat(data_list, axis=0, sort=True)
このコードは、指定したディレクトリ内のすべてのCSVファイルを読み込み、それらを一つのpandasデータフレームに結合します。
Pythonでのテキストファイルの結合
Pythonの標準ライブラリを使用して、テキストファイルを結合することも可能です。以下に、2つのテキストファイルを結合する方法を示します。
with open("File1.txt") as fin1, open("File2.txt") as fin2:
lines = set(fin1.readlines())
lines.update(set(fin2.readlines()))
with open("file3.txt", 'w') as fout:
fout.write('\n'.join(list(lines)))
このコードは、2つのテキストファイルを読み込み、それらの行を結合して新しいファイルに書き出します。set
を使用することで、重複する行は除外されます。
以上がPythonで複数のファイルを結合する基本的な方法です。具体的な要件に応じて、これらのコードを適宜カスタマイズして使用できます。Pythonの強力なライブラリと簡潔な文法により、ファイル操作も容易に行うことができます。