将数据导入Google Colaboratory

Gra*_*rae 133 google-sheets google-colaboratory

将私人数据导入Google Colaboratory笔记本的常用方法有哪些?是否可以导入非公开的Google表格?您无法从系统文件中读取.介绍性文档链接到使用BigQuery指南,但这似乎有点......很多.

Bob*_*ith 170

可在此处获取演示本地文件上载/下载以及与云端硬盘和工作表集成的官方示例笔记本:https: //colab.research.google.com/notebooks/io.ipynb

共享文件的最简单方法是安装Google云端硬盘.

为此,请在代码单元格中运行以下命令:

from google.colab import drive
drive.mount('/content/drive')
Run Code Online (Sandbox Code Playgroud)

之后,您的Drive文件将被挂载,您可以使用侧面板中的文件浏览器进行浏览.

在此输入图像描述

这是一个完整的示例笔记本

  • 我可以在云端硬盘中导入特定文件夹吗?我正与其他人分享这个colab,我不想访问包含敏感信息的所有google驱动器 (6认同)
  • 如果共享笔记本,则不会共享云端硬盘中的文件.用户仍然需要安装自己的驱动器,这是独立的.如果需要,您可以与该用户共享文件,但所有这些都由正常的驱动器ACL控制.共享Colab笔记本仅共享笔记本,而不共享该笔记本中引用的驱动器文件. (4认同)
  • 不要训练已安装的谷歌硬盘中的数据.首先将数据复制到本地驱动器,然后在其上进行训练.它将快近10倍.为了更快地复制,请确保数据文件是大型存档或许多较小的存档.例如: - 不要使用100000图像文件.每个使用100个档案,每张1000张图像.这种方式上传到谷歌驱动器也更快,从谷歌驱动器到colab的复制也是如此 (3认同)
  • 工作表示例现在包含在捆绑示例笔记本中,其中还包含云端硬盘和Google云端存储的配方:https://colab.research.google.com/notebook#fileId=/v2/external/notebooks/io.ipynb (2认同)

井上智*_*上智文 34

上传

from google.colab import files
files.upload()
Run Code Online (Sandbox Code Playgroud)

下载

files.download('filename')
Run Code Online (Sandbox Code Playgroud)

列表目录

files.os.listdir()
Run Code Online (Sandbox Code Playgroud)

  • 上传的文件是存储在用户的谷歌硬盘或笔记本电脑所连接的服务器上吗? (5认同)
  • 这些文件不是短暂的吗? (2认同)
  • 有什么上传的理由吗? (2认同)
  • 这个答案应该在顶部。问题是关于导入数据,而不是安装谷歌驱动器。 (2认同)

E G*_*E G 17

从googledrive导入数据的简单方法 - 这样做可以节省人们的时间(不知道谷歌为什么不明确地列出这一步).

安装和认证PYDRIVE

     !pip install -U -q PyDrive ## you will have install for every colab session

     from pydrive.auth import GoogleAuth
     from pydrive.drive import GoogleDrive
     from google.colab import auth
     from oauth2client.client import GoogleCredentials

     # 1. Authenticate and create the PyDrive client.
     auth.authenticate_user()
     gauth = GoogleAuth()
     gauth.credentials = GoogleCredentials.get_application_default()
     drive = GoogleDrive(gauth)
Run Code Online (Sandbox Code Playgroud)

UPLOADING

如果您需要从本地驱动器上传数据:

    from google.colab import files

    uploaded = files.upload()

    for fn in uploaded.keys():
       print('User uploaded file "{name}" with length {length} bytes'.format(name=fn, length=len(uploaded[fn])))
Run Code Online (Sandbox Code Playgroud)

执行,这将显示一个选择文件按钮 - 找到您的上传文件 - 单击打开

上传后,会显示:

    sample_file.json(text/plain) - 11733 bytes, last modified: x/xx/2018 - %100 done
    User uploaded file "sample_file.json" with length 11733 bytes
Run Code Online (Sandbox Code Playgroud)

为笔记本创建文件

如果您的数据文件已在gdrive中,则可以跳到此步骤.

现在它在你的谷歌驱动器中.在google云端硬盘中找到该文件,然后右键单击.点击获取'可共享链接'.你会得到一个窗口:

    https://drive.google.com/open?id=29PGh8XCts3mlMP6zRphvnIcbv27boawn
Run Code Online (Sandbox Code Playgroud)

复制 - '29PGh8XCts3mlMP6zRphvnIcbv27boawn' - 即文件ID.

在你的笔记本中:

    json_import = drive.CreateFile({'id':'29PGh8XCts3mlMP6zRphvnIcbv27boawn'})

    json_import.GetContentFile('sample.json') - 'sample.json' is the file name that will be accessible in the notebook.
Run Code Online (Sandbox Code Playgroud)

将数据导入笔记本

要导入您上传到笔记本中的数据(本例中的json文件 - 如何加载将取决于文件/数据类型 - .txt,.csv等):

    sample_uploaded_data = json.load(open('sample.json'))
Run Code Online (Sandbox Code Playgroud)

现在您可以打印以查看数据:

    print(sample_uploaded_data)
Run Code Online (Sandbox Code Playgroud)

  • 值得指出的是,通过“google.colab.files.upload()”的“上传”建议似乎不适用于 Firefox 和 Safari,仅适用于 Chrome。请参阅[此处](/sf/ask/3389453161/) (2认同)

Gar*_*ain 10

第1步-将您的Google云端硬盘安装到协作

from google.colab import drive
drive.mount('/content/gdrive')
Run Code Online (Sandbox Code Playgroud)

第2步-现在,您将在左窗格(文件资源管理器)中看到您的Google云端硬盘文件。右键单击您需要导入的文件,然后选择çopypath。然后,使用此复制的路径照常导入熊猫。

import pandas as pd
df=pd.read_csv('gdrive/My Drive/data.csv')
Run Code Online (Sandbox Code Playgroud)

做完了!

  • 胜在清晰和简洁,并且具有同等的有效性。我认为采用更复杂的方法来做到这一点没有任何优势。 (3认同)

sam*_*bia 9

上传数据/将数据导入 Google colab GUI 的最佳且简单的方法是单击最左边的第三个选项“文件”菜单图标,您将在 Windows 操作系统中上传浏览器文件。检查下面的图像以便更好地理解。单击以下两个选项后,您将轻松获得上传窗口框。完工。 在此输入图像描述

from google.colab import files
files=files.upload()
Run Code Online (Sandbox Code Playgroud)


小智 6

我做的最简单的方法是:

  1. 使用您的数据集在github上创建存储库
  2. 克隆您的存储库!git clone --recursive [GITHUB LINK REPO]
  3. 找到你的数据在哪里(!ls命令)
  4. 用普通的jupyter笔记本中的pandas打开文件.

  • 如果单个文件大小超过github允许限制,如果在免费版本中猜测为20MB,则此解决方案将无法解决. (2认同)

yl_*_*low 6

这样您就可以通过Google云端硬盘上传文件了.

运行下面的代码(之前发现这个地方,但我再也找不到来源了 - 不管是谁写的!):

!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

from google.colab import auth
auth.authenticate_user()
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}
Run Code Online (Sandbox Code Playgroud)

点击出现的第一个链接,提示您登录Google; 之后会出现另一个会要求获得访问您的Google云端硬盘的权限.

然后,运行此选项以创建名为"drive"的目录,并将您的Google云端硬盘链接到该目录:

!mkdir -p drive
!google-drive-ocamlfuse drive
Run Code Online (Sandbox Code Playgroud)

如果你!ls现在这样做,会有一个目录驱动器,如果你这样做,!ls drive你可以看到你的谷歌硬盘的所有内容.

例如,如果我将我的文件保存在我的Google云端硬盘中调用abc.txt的文件夹ColabNotebooks中,我现在可以通过路径访问它drive/ColabNotebooks/abc.txt

  • [来源](https://medium.com/deep-learning-turkey/google-colab-free-gpu-tutorial-e113627b9f5d) (2认同)

Viv*_*nki 6

在任何合作实验室的左侧栏上都有一个名为“文件”的部分。在那里上传您的文件并使用此路径

"/content/YourFileName.extension"
Run Code Online (Sandbox Code Playgroud)

前任: pd.read_csv('/content/Forbes2015.csv');

  • 确保您已直接上传到根目录,而不是在“sample_data”目录中。此外,您可以删除“内容”并只写文件名,如:`pd.read_csv('Forbes2015.csv');` (2认同)

del*_*ica 5

从 Dropbox 快速轻松地导入:

!pip install dropbox
import dropbox
access_token = 'YOUR_ACCESS_TOKEN_HERE' # https://www.dropbox.com/developers/apps
dbx = dropbox.Dropbox(access_token)

# response = dbx.files_list_folder("")

metadata, res = dbx.files_download('/dataframe.pickle2')

with open('dataframe.pickle2', "wb") as f:
  f.write(res.content)
Run Code Online (Sandbox Code Playgroud)


小智 5

Colab 中只需两行代码。非常简单的方法:

\n
    \n
  1. 将一个 zip 存档中的所有文件加载到 Google 云端硬盘。
  2. \n
  3. 通过链接使其对每个人都可见。
  4. \n
  5. 从此链接复制 ID。(例如:在此链接中https://drive.google.com/open?id=29PGh8XCts3mlMP6zRphvnIcbv27boawn ID 为29PGh8XCts3mlMP6zRphvnIcbv27boawn
  6. \n
  7. 在 Colab 中输入:\n!gdown --id 29PGh8XCts3mlMP6zRphvnIcbv27boawn
  8. \n
  9. 进入 Colab 的最后一步:\n! unzip file_name.zip
  10. \n
\n

瞧\xc3\xa0!所有需要的文件都已准备好在 Colab 中使用/content/file_name.csv

\n

对于这种将文件从 Drive 获取到 Colab 的简单方法,我感谢 Gleb Mikhaylov。

\n