web-dev-qa-db-ja.com

google colaboratoryでファイルを読み取れない

Google colaboratoryでファイルを読み取れません。同じディレクトリに.ipynbファイルと.csvファイルがありますが、実行しようとすると:

train = pd.read_csv("train.csv") 

私は得る:

FileNotFoundError: File b'train.csv' does not exist

enter image description here

8
ronseg

trainファイルを開く前にこのコードを実行してください。

パートI

_# Install a Drive Fuse wrapper. # https://github.com/astrada/google-drive-ocamlfuse_

_!apt-get install -y -qq software-properties-common python-software-properties module-init-tools !add-apt-repository -y ppa:alessandro-strada/ppa 2>&1 > /dev/null !apt-get update -qq 2>&1 > /dev/null !apt-get -y install -qq google-drive-ocamlfuse Fuse_

パートII

_# Generate auth tokens for Colab_

from google.colab import auth auth.authenticate_user()

パートIII

_# Generate creds for the Drive Fuse library._

from oauth2client.client import GoogleCredentials creds = GoogleCredentials.get_application_default() import getpass !google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL vcode = getpass.getpass() !echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}

パートIV

_# Create a directory and mount Google Drive using that directory._

_!mkdir -p drive !google-drive-ocamlfuse drive_

パートV

print ('Files in Drive:') !ls drive/

上記のコードを実装したら、_google-colaboratory_でtrainファイルを開くだけです

train = pd.read_csv('drive/...{folder_name}.../train.csv, encoding='utf8')

これがお役に立てば幸いです!

7
Soni

PyDriveラッパーをインストールしてライブラリをインポートします。

これはノートブックごとに1回だけ行う必要があります。

!pip install -U -q PyDrive
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
from google.colab import auth
from oauth2client.client import GoogleCredentials

PyDriveクライアントを認証して作成します。

これはノートブックごとに1回だけ行う必要があります。

auth.authenticate_user()
gauth = GoogleAuth()
gauth.credentials = GoogleCredentials.get_application_default()
drive = GoogleDrive(gauth)

ファイルIDに基づいてファイルをダウンロードします。

ファイルIDは次のようになります:laggVyWshwcyP6kEI-y_W3P8D26sz

file_id = 'REPLACE_WITH_YOUR_FILE_ID'
downloaded = drive.CreateFile({'id': file_id})
downloaded = drive.CreateFile({'id':'1BH-rffqv_1auzO7tdubfaOwXzf278vJK'}) # replace the id with id of file you want to access
downloaded.GetContentFile('xyz.csv')  

# Read file as panda dataframe
import pandas as pd
xyz = pd.read_csv('xyz.csv') 
3
Coddy

私はWindows 10を使用していますが、これは私にとって完璧に機能しました。試してみてください。

ドライブに新しいフォルダーを追加します。好きな名前を付けてください。私の場合、名前は"Colab Notebook"です。これは、コードとデータファイルを保管するフォルダーです。

まず、ドライブをマウントする必要があります。このために、次を1つずつ実行します

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

2番目のコマンドの後、認証キーがある場所のリンクをポップします。このリンクを開き、キーをコピーして貼り付け、Enterキーを押します。

次に!lsと入力します。このようなものを与える必要がありますdrive sample_data

データファイルをアップロードします。 csvであるか、Excelファイルでも問題ありませんが、コマンドはそれぞれ異なります。

csvファイルの場合

train = pd.read_csv('/content/drive/My Drive/Colab Notebook/train.csv')

Excelファイルの場合変更は同じだけですpandasコマンドとファイル拡張子

パスの先頭に/を入れてください。ファイルエクスプローラーからマウントされたドライブを右クリックしてパスをコピーすると、先頭のスラッシュはコピーされません。必ずパスに追加してください。

gdrive path

1
Abhinaw Sharma