Pythonは、さまざまなデータ形式に対応しており、その中でもCSVファイルを扱うことが非常に簡単です。
この記事では、Pythonを使ってCSVファイルの読み込みと出力を行う方法について詳しく解説します。
基本的な方法から、実際のコード例を交えながらステップバイステップで進めていきますので、初心者でも安心して実践できます。
これを機に、PythonのCSV操作のスキルを習得し、データの扱いをより効率化していきましょう。
- 未経験者向けプログラミングスクール
- 現役エンジニアがしっかりサポート
- 卒業後も安心の転職・副業サポート
PythonでCSVファイルを読み込む基本的な方法

PythonでCSVファイルを読み込むには、標準ライブラリのcsvモジュールを使用します。
このモジュールを使うことで、簡単にCSVファイルの内容を操作することができます。
まずは、基本的なCSVファイルの読み込み方法を見ていきましょう。
csv.readerを使った読み込み
最も一般的な方法は、csv.reader関数を使うことです。
この関数は、指定したCSVファイルを1行ずつ読み込むために使用します。
例として、次のコードをご覧ください。
python
import csv
with open('sample.csv', 'r') as file:
reader = csv.reader(file)
for row in reader:
print(row)
このコードは、sample.csvというCSVファイルを開き、その内容を1行ずつ出力します。
csv.readerを使うことで、各行がリスト形式で読み込まれます。
ヘッダー行をスキップする方法
CSVファイルには、ヘッダー行(列名が含まれる最初の行)が含まれることがよくあります。
この場合、ヘッダー行をスキップしてデータ部分のみを読み込むことが可能です。
python
import csv
with open('sample.csv', 'r') as file:
reader = csv.reader(file)
next(reader) # ヘッダー行をスキップ
for row in reader:
print(row)
このコードでは、next()を使用して最初の行をスキップし、2行目以降のデータを読み込んでいます。
エラーハンドリング
CSVファイルを読み込む際に、予期しないエラーが発生することがあります。
このような場合には、try-except構文を使ってエラーハンドリングを行うことができます。
python
import csv
try:
with open('sample.csv', 'r') as file:
reader = csv.reader(file)
for row in reader:
print(row)
except FileNotFoundError:
print("ファイルが見つかりません。")
この例では、FileNotFoundErrorが発生した場合、エラーメッセージを表示します。
- 現役エンジニアからスキルを学べる
- 満足度は驚異の97.4%
- 300社以上のIT企業で研修に導入
- 毎日9時〜21時まで、無料カウンセリングを開催中!
PythonでCSVファイルにデータを出力する方法

CSVファイルにデータを出力する際も、csvモジュールが便利です。
次は、CSVファイルにデータを書き込む方法を見ていきましょう。
csv.writerを使ったデータの書き込み
基本的なデータの書き込みには、csv.writerを使用します。
次のコード例では、リスト形式のデータをCSVファイルに書き込む方法を示しています。
python
import csv
data = [
['名前', '年齢', '職業'],
['山田太郎', '30', 'エンジニア'],
['田中花子', '25', 'デザイナー']
]
with open('output.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerows(data)
このコードでは、output.csvという新しいファイルにデータが書き込まれます。
複数行のデータをまとめて出力する際に便利です。
デリミタを変更する方法
デフォルトでは、CSVファイルの区切り文字はカンマ(,)ですが、他の区切り文字に変更することも可能です。
例えば、タブ区切りのファイルを作成する場合、次のようにします。
python
import csv
data = [
['名前', '年齢', '職業'],
['山田太郎', '30', 'エンジニア'],
['田中花子', '25', 'デザイナー']
]
with open('output_tab.csv', 'w', newline='') as file:
writer = csv.writer(file, delimiter='\t')
writer.writerows(data)
この例では、タブ文字が区切り文字として使われているため、.tsv形式のファイルを生成することも可能です。
1行ずつデータを追加する方法
既存のCSVファイルに1行ずつデータを追加する場合には、csv.writer.writerowを使用します。
次のコードでは、既存のファイルに新しいデータを追加しています。
python
import csv
new_data = ['佐藤一郎', '40', 'マネージャー']
with open('output.csv', 'a', newline='') as file:
writer = csv.writer(file)
writer.writerow(new_data
このコードは、output.csvに新しい行を追加します。
pandasを使ったCSVファイルの操作

Pythonでは、pandasライブラリを使って、より高度なCSVファイルの操作を行うことが可能です。
ここでは、pandasを使った基本的な方法を紹介します。
pandas.read_csvを使った読み込み
pandasを使うと、CSVファイルの読み込みが非常に簡単になります。
以下は、read_csvを使ったCSVファイルの読み込み例です。
python
import pandas as pd
df = pd.read_csv('sample.csv')
print(df)
このコードは、CSVファイルの内容をデータフレーム形式で読み込みます。
pandas.to_csvを使った書き込み
pandasを使って、データフレームをCSVファイルに書き込むことも簡単です。
次のコード例をご覧ください。
python
import pandas as pd
data = {
'名前': ['山田太郎', '田中花子'],
'年齢': [30, 25],
'職業': ['エンジニア', 'デザイナー']
}
df = pd.DataFrame(data)
df.to_csv('output_pandas.csv', index=False)
このコードでは、データフレームをCSVファイルに出力しています。
pandasは、自動的にインデックスを付けるため、index=Falseでそれを防ぐことができます。
特定の列のみを読み込む方法
CSVファイルの中から、特定の列だけを読み込むことも可能です。
次のコードでは、’名前’列のみを読み込んでいます。
python
import pandas as pd
df = pd.read_csv('sample.csv', usecols=['名前'])
print(df)
このコードは、CSVファイルの中から指定した列のみを抽出します。
プログラミングスクール受講時には教育訓練給付制度を利用することで、受講料の最大80%の給付を受けることが可能です。
まとめ

Pythonを使ったCSVファイルの読み込みと出力は、非常に簡単かつ効率的です。
標準のcsvモジュールや、pandasを活用することで、さまざまなデータ操作が可能になります。
これらの技術を使いこなして、データ処理を効率化しましょう。



コメント