编程语言
首页 > 编程语言> > python – 在colaboratory中从驱动器加载xlsx文件

python – 在colaboratory中从驱动器加载xlsx文件

作者:互联网

如何从谷歌驱动器导入MS-excel(.xlsx)文件到colaboratory?

excel_file = drive.CreateFile({'id':'some id'})

确实有效(驱动器是pydrive.drive.GoogleDrive对象).但,

print excel_file.FetchContent()

返回无.和

excel_file.content()

抛出:

TypeErrorTraceback (most recent call last)
in ()
—-> 1 excel_file.content()

TypeError: ‘_io.BytesIO’ object is not callable

我的意图是(给定一些有效的文件’id’)将其作为io对象导入,可以通过pandas read_excel()读取,最后从中获取pandas数据帧.

解决方法:

您将要使用excel_file.GetContentFile在本地保存文件.然后,你可以使用Pandas read_excel方法!pip install -q xlrd.

这是一个完整的例子:
https://colab.research.google.com/notebook#fileId=1SU176zTQvhflodEzuiacNrzxFQ6fWeWC

我做的更详细:

我创建了一个新的spreadsheet in sheets作为.xlsx文件导出.

接下来,我将其导出为.xlsx文件并再次上传到云端硬盘. URL是:
https://drive.google.com/open?id=1Sv4ib5i7CKWhAHZkKg-uitIkS3xwxtXM

记下文件ID.就我而言,它是1Sv4ib5i7CKWhAHZkKg-uitIkS3xwxtXM.

然后,在Colab中,我调整了Drive download snippet来下载文件.关键位是:

file_id = '1Sv4ib5i7CKWhAHZkKg-uitIkS3xwxtXM'
downloaded = drive.CreateFile({'id': file_id})
downloaded.GetContentFile('exported.xlsx')

最后,创建一个Pandas DataFrame:

!pip install -q xlrd
import pandas as pd
df = pd.read_excel('exported.xlsx')
df

!pip install …行安装xlrd库,这是读取Excel文件所必需的.

标签:python,excel,pandas,pydrive,google-colaboratory
来源: https://codeday.me/bug/20190607/1195662.html