バックエンド

PythonでCSVファイルを読み込む方法

CSVファイルの読み込みってどうやるの?

ナカイ君: PythonでCSVファイルの読み込み方法をわかりやすく教えてほしいな。

世界のアオキ: OK、CSVファイルを読み込む基本的な方法にはcsvモジュールを使う方法があるよ。これはPythonに標準で含まれているモジュールで、CSVファイルの読み書きを簡単に行うことができるんだ。

ナカイ君: もっと具体的に教えてくれない?

世界のアオキ: もちろん。CSVファイルとは、値がコンマで区切られたテキストファイルのことで、表形式のデータを簡単に保存できるんだ。例えば、名前や年齢、住所などの情報を一行ずつ保存することができるよ。

CSVファイルを読み込むコード

ナカイ君: わかりやすいコードがあれば教えてほしいな。

世界のアオキ: そうだね、こんな感じでコードを書くんだ。

import csv

# CSVファイルを開いて読み込む
with open('example.csv', mode='r', encoding='utf-8') as file:
    reader = csv.reader(file)
    
    # 一行ずつ読み出す
    for row in reader:
        print(row)

このコードでは、example.csvというCSVファイルを開いて、その内容を一行ずつ読み出しているんだ。print(row)で読み出した行の内容を確認できるよ。

CSVファイルのデータを扱う方法

ナカイ君: 具体的にはどうやって使うの?

世界のアオキ: たとえば、CSVファイルから読み込んだデータをリストに保存したい場合はこんな感じだよ。

import csv

# CSVファイルからデータを読み込んでリストに保存
with open('example.csv', mode='r', encoding='utf-8') as file:
    reader = csv.reader(file)
    data_list = list(reader)

print(data_list)

ナカイ君: 他のパターンがあれば教えてほしいな。

世界のアオキ: そうだね、CSVファイルにヘッダーがある場合は、DictReaderを使うと便利だよ。これを使うと、各行を辞書として扱うことができるから、列の名前でデータにアクセスできるんだ。

import csv

# ヘッダー付きのCSVファイルを読み込む
with open('example_with_header.csv', mode='r', encoding='utf-8') as file:
    reader = csv.DictReader(file)
    
    for row in reader:
        print(row['Name'], row['Age'])  # 列の名前でデータにアクセス

ナカイ君: そうやって使えばいいんだね。

世界のアオキ: ただし、CSVファイルを扱う時には、ファイルのエンコーディングに注意してね。ファイルによってはエンコーディングが異なる場合があるから、エラーが出たらエンコーディングを変えてみるといいよ。

ナカイ君: わかった、ありがとう!

まとめ

この記事では、PythonでCSVファイルを読み込む方法について説明しました。

csvモジュールを使えば、CSVファイルの読み書きが簡単に行えます。csv.readerを使ってファイルの内容を一行ずつ読み出したり、csv.DictReaderを使ってヘッダー付きのCSVファイルからデータを辞書として読み出す方法を学びました。

PythonでCSVファイルを扱うことで、データ処理や分析が格段に楽になります。ナカイ君、これでデータ処理のスキルが一段とアップするといいね!


関連記事一覧 (一部広告あり)

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


最近の記事

アーカイブ

  1. オンライン教材

    【ChatGPT】エンジニア編をリリースしました
  2. オンライン教材

    ChatGPTをビジネス活用する講座をリリースしました【Udemy】
  3. オンライン教材

    【AWS】【初心者向け】インフラの基礎からわかる講座をリリースしました【Udem…
  4. オンライン教材

    【React】初心者向け講座をリリースしました【MUI】【Udemy】
  5. バックエンド

    【Laravel第4弾】Vue.js3(CompositionAPI+Scrip…
PAGE TOP