繁体   English   中英

如何在 Google Colab 中读取 csv 到 dataframe

[英]How to read csv to dataframe in Google Colab

我正在尝试读取存储在本地计算机上的 csv 文件。 (仅供参考,这里是来自 Kaggle 的巨大数据。)

这个问题和答案中,我了解到您可以使用这段代码导入数据,这对我来说效果很好。

from google.colab import files
uploaded = files.upload()

我迷路的地方是如何从这里将其转换为 dataframe。 上面答案中列出的示例 google notebook 页面没有谈论它。

我正在尝试使用from_dict命令转换uploaded到 dataframe 的字典,但无法使其工作。 这里有一些关于将 dict 转换为 dataframe 的讨论,但这些解决方案不适用于我(我认为)。

总结一下,我的问题是:

如何将存储在本地文件中的 csv 文件转换为 Google Colaboratory 上的 pandas dataframe?

第 1 步 - 将您的 Google Drive 安装到 Collaboratory

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

第 2 步 - 现在您将在左窗格(文件资源管理器)中看到您的 Google Drive 文件。 右键单击您需要导入的文件并选择 çopy 路径。 然后像往常一样导入熊猫,使用这个复制的路径。

import pandas as pd 
df=pd.read_csv('gdrive/My Drive/data.csv')

完成!

Pandas read_csv应该可以解决问题。 由于read_csv需要一个类似文件的对象,因此您需要将上传的字节包装在io.StringIO

这是一个完整的示例: https : //colab.research.google.com/notebook#fileId=1JmwtF5OmSghC-y3-BkvxLan0zYXqCJJf

关键片段是:

import pandas as pd
import io

df = pd.read_csv(io.StringIO(uploaded['train.csv'].decode('utf-8')))
df

Colab google:从您的 PC 上传 csv我遇到了与 excel 文件 (*.xlsx) 相同的问题,我解决了以下问题,我认为您可以对 csv 文件执行相同的操作: - 如果您的文件中有一个文件PC 驱动器称为 (file.xlsx) 然后: 1- 使用以下简单代码从您的硬盘驱动器上传它:

from google.colab import files
uploaded = files.upload()

按(选择文件)并将其上传到您的谷歌驱动器。

2-然后:

import io
data = io.BytesIO(uploaded['file.XLSX'])    

3- 最后,阅读您的文件:

import pandas as pd   
f = pd.read_excel(data , sheet_name = '1min', header = 0, skiprows = 2)
#df.sheet_names
df.head()

4- 请更改参数值以读取您自己的文件。 我认为这可以推广到读取其他类型的文件!
享受吧!

这对我有用:

from google.colab import auth
auth.authenticate_user()

from pydrive.drive import GoogleDrive
from pydrive.auth import GoogleAuth
from oauth2client.client import GoogleCredentials
gauth = GoogleAuth()
gauth.credentials = GoogleCredentials.get_application_default()
drive = GoogleDrive(gauth)

myfile = drive.CreateFile({'id': '!!!YOUR FILE ID!!!'})
myfile.GetContentFile('file.csv')

替换!!!YOUR FILE ID!!! 带有 google 驱动器中文件的 ID(这是当您单击“获取共享链接”时出现的长字母数字字符串)。 然后你可以使用pandas的read_csv访问file.csv:

import pandas as pd
frm = pd.read_csv('file.csv', header=None)

所以,如果你不是在 google colab 上工作,你会简单地写这样的东西:

df = pd.read_csv('path_of_the_csv_file')

在 google colab 中,您唯一需要知道的是 csv 文件的路径。

如果您按照我在下面写的步骤进行操作,您的问题将得到解决:

  1. 首先,将 CSV 文件上传到您的谷歌驱动器上。
  2. 然后,打开您的 google colab 笔记本并单击页面左侧的“文件”图标。
  3. 然后,单击“Google 云端硬盘文件夹”图标以安装您的 Google 云端硬盘。
  4. 然后,查找您上传到 Google 驱动器上的 csv 文件(步骤 1),并复制其路径。
  5. 获得路径后,将其视为普通路径并在您的代码中使用它。 它应该是这样的:
   df = pd.read_csv('/content/drive/MyDrive/File.csv')

这对我有用:

import pandas as pd
import io

df=pd.read_csv(io.StringIO(uploaded['Filename.CSV'].decode('ISO-8859-1')))
df

或者,您也可以使用 github 导入文件。 你可以以此为例: https : //drive.google.com/file/d/1D6ViUx8_ledfBqcxHCrFPcqBvNZitwCs/view?usp=sharing

此外,谷歌不会将文件保留更长时间,因此您可能必须一次又一次地运行 github 代码段。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM