Load local data files to Colaboratory
我只是想知道是否可以将本地数据文件(例如Google驱动器上的.xlsx或.csv文件)加载到Colaboratory中?
乍看之下,加载本地文件的示例让我有些困惑,因为没有地方可以指定文件路径。您需要做的就是复制并粘贴配方以解决此问题,但请注意:
1 2 | from google.colab import files uploaded = files.upload() |
将打开一个上传对话框窗口,您可以在其中浏览并选择要上传的本地文件。
然后
1 2 3 | for fn in uploaded.keys(): print('User uploaded file"{name}" with length {length} bytes'.format( name=fn, length=len(uploaded[fn]))) |
会向您显示访问刚刚上传的内容的密钥。
编辑以获得更多说明:字典
是的,所有这些方案都受支持。
有关访问本地文件和云端硬盘文件的配方,请查看I / O示例笔记本。
要访问
最近添加的一种上传本地文件的方法是使用右侧抽屉中的"文件"标签。
从那里,您可以使用"上传"按钮上传本地文件。
(您也可以通过在文件树中右键单击文件来下载文件。)
首先,执行此单元格应创建一个内联"选择文件"按钮
1 2 | from google.colab import files uploaded = files.upload() |
选择文件后,
1 2 3 | import pandas as pd import io df = pd.read_csv(io.StringIO(uploaded['filename.csv'].decode('utf-8'))) |
之后,您的数据框
对于那些希望通过另一种方式上传更多文件的人来说,将其放置在那里是一种选择-基本上,您可以通过Google云端硬盘上传文件。
运行以下代码(以前在某个地方找到了它,但是我再也找不到源了-归功于任何编写者!):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | !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} |
点击出现的第一个链接,提示您登录Google;之后,将会出现另一个请求访问您的Google云端硬盘的权限。
然后,运行此命令,创建一个名为" drive"的目录,并将您的Google Drive链接到该目录:
1 2 | !mkdir -p drive !google-drive-ocamlfuse drive |
如果现在执行
因此,例如,如果我将名为
要将本地数据文件加载到Colab:
方法1:Google云端硬盘方法
在Colab中挂载Google驱动器
drive.mount('/content/gdrive')
然后->
您现在可以在Google Colab中访问Google驱动器文件。
方法2:直接加载
1 2 3 4 5 6 7 | from google.colab import files def getLocalFiles(): _files = files.upload() if len(_files) >0: for k,v in _files.items(): open(k,'wb').write(v) getLocalFiles() |
方法3:使用导入文件
1 2 | from google.colab import files uploaded = files.upload() |
要从系统获取数据以进行协作,请尝试以下操作:
1 2 | from google.colab import files uploaded = files.upload() |
选择要上传的文件,然后按Enter键并完成。
例如,我上传了一张图片,并使用以下代码显示了该图片:
1 2 3 4 5 6 7 8 9 | import cv2 import numpy as np from matplotlib import pyplot as plt img = cv2.imread('image.jpg') img_cvt = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) plt.imshow(img_cvt) plt.show() |
这是一个两步过程。
步骤1:首先使用以下代码在您的colab笔记本中调用文件选择器
1 2 | from google.colab import files uploaded = files.upload() |
这将带您到文件浏览器窗口
步骤2:要将文件的内容加载到Pandas数据框中,请使用以下代码
1 2 3 4 | import pandas as pd import io df = pd.read_csv(io.StringIO(uploaded['iris.csv'].decode('utf-8'))) print(df) |
您可以使用以下URL在Google Colab中上传文件:
1 | https://colab.research.google.com/notebooks/io.ipynb#scrollTo=vz-jH8T_Uk2c |
转到
然后运行代码。 之后,将出现浏览器按钮,供您从PC上传文件。
假设您在Google驱动器上有一个名为
加载此文件
1 2 3 | import pandas as pd titanic = pd.read_csv("drive/Colab/Titanic.csv") titanic.head(5) |
在此之前,您可能需要运行以下命令:
首先运行这些代码,以安装必要的库并执行授权。
1 2 3 4 5 6 7 8 9 10 11 12 | !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} |
当您运行上面的代码时,您应该看到如下结果:
单击链接,复制验证码并将其粘贴到文本框中。
完成授权过程后,
挂载您的Google云端硬盘:
1 2 | !mkdir -p drive !google-drive-ocamlfuse drive |