PythonでCSVファイルを操作する際、特定の列にデータを書き込むことがよくあります。この記事では、その方法を詳しく解説します。

pandasを使用した方法

pandasライブラリを使用すると、特定の列を選択してCSVファイルに書き込むことができます。以下にそのコードを示します。

import pandas as pd

# CSVファイルを読み込む
df = pd.read_csv('input.csv')

# 書き込む列を選択
columns_to_write = ["column1", "column2", "column3"]

# 選択した列を新しいCSVファイルに書き込む
df[columns_to_write].to_csv('output.csv', index=False)

このコードでは、まずpandasを用いてCSVファイルを読み込みます。次に、書き込む列を選択します。最後に、選択した列を新しいCSVファイルに書き込みます。

csvモジュールを使用した方法

Pythonの標準ライブラリであるcsvモジュールを使用することでも、特定の列にデータを書き込むことが可能です。以下にそのコードを示します。

import csv

def write_to_column(csv_file, column_name, data):
    with open(csv_file, 'r') as file:
        reader = csv.DictReader(file)
        rows = list(reader)

        if column_name not in reader.fieldnames:
            print(f"Error: Column '{column_name}' does not exist.")
            return

        for row in rows:
            row[column_name] = data

    with open(csv_file, 'w', newline='') as file:
        writer = csv.DictWriter(file, fieldnames=reader.fieldnames)
        writer.writeheader()
        writer.writerows(rows)

csv_file = 'sample.csv'
new_data = 'New Value'
column = 'Column1'

write_to_column(csv_file, column, new_data)

このコードでは、まずCSVファイルを読み込み、指定した列名が存在するかどうかを確認します。列名が存在する場合、新しいデータをその列に書き込みます。

以上、PythonでCSVファイルに特定の列を書き込む方法について解説しました。pandasライブラリを使用する方法とcsvモジュールを使用する方法の2つを紹介しました。それぞれの方法には特徴がありますので、目的に応じて適切な方法を選択してください。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です