Google Colabは、ブラウザ上でPythonコードを実行できる無料のツールで、データ解析や学習に最適です。特別なインストール不要で、すぐに試せるのが魅力です!
ColabでCSVファイルを準備する
Google ColabでCSVを扱うには、まずファイルを用意する必要があります。
試作用に、以下のような簡単なCSVをテキストエディタで作り、sample.csvとして保存してからアップロードしてみましょう:
name,age,job
Taro,25,Engineer
Hanako,30,Designer
Jiro,22,Student
ファイルをアップロードする。
from google.colab import files
uploaded = files.upload()
CSVファイルを読み込む基本コード
Pythonの標準ライブラリcsvを使って、アップロードまたは作成したsample.csvを読み込んでみましょう。Colabのセルに以下を入力して実行します:
import csv
# CSVファイルを開く
with open('sample.csv', 'r', encoding='utf-8') as file:
# CSVリーダーを作成
reader = csv.reader(file)
# ヘッダー行を表示
header = next(reader)
print('ヘッダー:', header)
# データを1行ずつ表示
for row in reader:
print('データ:', row)
実行すると、こんな出力が得られます:
ヘッダー: ['name', 'age', 'job']
データ: ['Taro', '25', 'Engineer']
データ: ['Hanako', '30', 'Designer']
データ: ['Jiro', '22', 'Student']
Colabではセルごとに実行結果がすぐ下に表示されるので、動作確認がとても簡単です。
年齢でフィルタリングしてみる
データをただ読むだけでなく、少し加工してみましょう。たとえば、25歳以上の人だけを表示するコードです:
import csv
with open('sample.csv', 'r', encoding='utf-8') as file:
reader = csv.reader(file)
header = next(reader) # ヘッダーをスキップ
# 25歳以上の人のみを表示
for row in reader:
name = row[0] # 名前
age = int(row[1]) # 年齢(文字列から整数に変換)
job = row[2] # 職業
if age >= 25:
print(f"{name} ({age}歳) - {job}")
出力結果:
Taro (25歳) - Engineer
Hanako (30歳) - Designer
Colabなら、このコードをセルに貼り付けて「再生」ボタンを押すだけで結果が見られます。
辞書形式で読み込む(DictReader)
csv.DictReaderを使えば、ヘッダーをキーとした辞書形式でデータを扱えます。コードはこちら:
import csv
with open('sample.csv', 'r', encoding='utf-8') as file:
reader = csv.DictReader(file)
for row in reader:
print(f"{row['name']} ({row['age']}歳) - {row['job']}")
出力は先ほどと同じですが、列名を直接指定できるので、可読性が上がります。
Colabならではのポイント
- ファイルの管理: Colabの「ファイル」タブでアップロードしたCSVを確認したり、ダウンロードしたりできます。
- 一時性: Colabの環境はセッションが終わるとリセットされるので、重要なファイルはGoogle Driveに保存するのがおすすめ。
- Google Drive連携: 大きなCSVを扱う場合、from google.colab import driveでDriveをマウントすれば、簡単にアクセス可能です。
まとめ
Google Colabを使えば、インストール不要でCSV解析をすぐに始められます。Pythonのcsvモジュールで基本的な読み込みやフィルタリングができ、Colabのインタラクティブな環境で試行錯誤も簡単です。さらに高度な分析をしたいなら、pandasライブラリを試してみるのも良いでしょう。
ぜひColabを開いて、このコードをコピペして動かしてみてください。データ解析の第一歩が踏み出せますよ!