0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

FileNotFoundError:Google ColabでCSVが読み込めない時の対処法

0
Posted at

1. はじめに

この記事では、Google Colab の .ipynb ファイルからCSVファイルを読み込もうとしたときのエラーとその解決策について述べる。


Google Drive 上で同じディレクトリにあるCSVファイル(stocks.csv)を、.ipynb ファイルから読み込もうとしたときに次のようなエラーがでた。

---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
/tmp/ipykernel_303/4057209512.py in <cell line: 0>()
      2 import pulp
      3 
----> 4 stock_df = pd.read_csv('stocks.csv')
      5 stock_df

4 frames
/usr/local/lib/python3.12/dist-packages/pandas/io/common.py in get_handle(path_or_buf, mode, encoding, compression, memory_map, is_text, errors, storage_options)
    871         if ioargs.encoding and "b" not in ioargs.mode:
    872             # Encoding
--> 873             handle = open(
    874                 handle,
    875                 ioargs.mode,

FileNotFoundError: [Errno 2] No such file or directory: 'stocks.csv'

同じディレクトリに CSV ファイルがあるため、相対パスで指定すれば読み込めると考えた。
しかし、Google Colab の実行環境はローカル環境とは異なるため、同じディレクトリにあるように見えても相対パスでは参照できない場合がある。

2. エラーの解消

2.1. 解決策1

Google Drive 上のファイルを読み込む場合は、
まず Google Drive を Colab 環境にマウントする必要がある。

次のコードを実行する。

from google.colab import drive
drive.mount('/content/drive')

これを実行すると、次のような画面がでる。

スクリーンショット 2026-03-11 054252.png
図2-1. Google Drive へのアクセス許可画面

ここから Google ドライブに接続を押すと、ログイン画面が出るのでログインを行う。
これが完了したあと、.ipynb ファイルの左側からディレクトリファイルを選択する。

スクリーンショット 2026-03-11 054929.png
図2-2. Colab のサイドバーからファイルパネルを開く

そこから Drive > MyDrive と選択する。

image.png
図2-3. Google Drive をマウントした後のディレクトリ構造

そうすると、自分の Google Drive 上にあるすべてのファイルが表示されるので、そこから現在のディレクトリを選択し該当するCSVファイルのパスをコピーする。

image.png
図2-4. SampleDirectory 配下にある stocks.csv

このとき、CSVファイルのパスは、/content/drive/MyDrive/{your_directory}/{your_file} となる。今回は SampleDirectory 配下にある、CSVファイル(stocks.csv)を読み込みたいので、コードは次のようになる。

import pandas as pd

# 読み込みたいCSVファイルのパス
PATH = "/content/drive/MyDrive/SampleDirectory/stocks.csv"

# CSVファイルの読み込み
stock_df = pd.read_csv(PATH)
stock_df

これでエラーは解消された。

毎回フルパスを記述するのは、冗長なので %cd コマンドを使って、CSVがあるディレクトリに直接移動する方法もある。

これにより、先頭にディレクトリを宣言すれば、以降はファイル名だけで読み込むことができる。

コードは次のようになる。

import os
# 先にディレクトリを移動しておく
%cd /content/drive/MyDrive/SampleDirectory/

# 移動後はファイル名だけで読み込める
import pandas as pd
stock_df = pd.read_csv('stocks.csv')
stock_df

2.2. 解決策2

この方法は Google Drive 上のファイルを直接読み込む方法ではなく、ローカル環境からファイルをアップロードして読み込む方法である。

コードは次のようになる。

from google.colab import files
import pandas as pd

# ファイルのアップロード
files.upload()

# CSVファイルの読み込み
df = pd.read_csv("stocks.csv")
df

これを実行すると、次のような結果になる。

image.png
図2-5. files.upload() 実行後に表示されるファイルアップロード画面

ここから「ファイル選択」を押すと、ローカルディレクトリが表示される。そこから読み込みたいファイルをアップロードする。

アップロードをすると、次のような実行結果になりファイルが読み込めたことが確認できる。

image.png
図2-6. CSV ファイルが読み込まれたことを示す実行結果


Python で files.upload() コードを書かずに、ローカル環境から直接ドラッグ&ドロップでアップロードをすることもできる。解決策1で提示したように、ファイルアイコンからカレントディレクトリを開いた状態にする。(図2-4)

そしてローカルファイルから、ドラッグ&ドロップをしてファイルをアップロードする。

アップロード以降は、通常のようにファイルを読み込めばよい。

いずれの方法もローカル環境からアップロードできる利点はあるが、毎回の実行毎にファイルをアップロードする必要がある。

3. まとめ

この記事では、Google Colab の .ipynb ファイルからCSV ファイルを読み込もうとした際に発生するFileNotFoundError の原因と、その解決方法について紹介した。

Google Colab ではローカル環境とはディレクトリ構造が異なるため、Google Drive をマウントする方法や、ローカル環境から直接アップロードする方法を理解しておくと便利である。

解決策 メリット デメリット
1. Google Drive 大容量・保存が永続的 初回の認証が必要
2. 直接アップロード 認証不要 大容量に不向き・実行毎にアップロードする必要がある
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?