如何在 Google Colab 中将 csv 读取到数据帧
How to read csv to dataframe in Google Colab
我正在尝试读取存储在本地计算机上的 csv 文件。 (仅供参考,来自 Kaggle 的巨大数据是 here。)
从 问与答中我了解到您可以使用这段代码导入数据,这对我来说效果很好。
from google.colab import files
uploaded = files.upload()
我迷路的地方是如何从这里将它转换为数据帧。上面回答中列出的sample google notebook page不说了。
我正在尝试使用 from_dict
命令将字典 uploaded
转换为数据帧,但无法使其工作。有一些关于将 dict 转换为 dataframe here 的讨论,但这些解决方案不适用于我(我认为)。
所以总结一下,我的问题是:
How do I convert a csv file stored locally on my files to pandas
dataframe on Google Colaboratory?
Pandas read_csv
应该可以解决问题。您需要将上传的字节包装在 io.StringIO
中,因为 read_csv
需要一个类似文件的对象。
这是一个完整的例子:
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
或者,您也可以使用 github 导入文件。
您可以以此为例:https://drive.google.com/file/d/1D6ViUx8_ledfBqcxHCrFPcqBvNZitwCs/view?usp=sharing
此外 google 不会将文件保存更长时间,因此您可能不得不 运行 一次又一次 github 片段。
Colab google:正在从您的 PC 上传 csv
我在 excel 文件 (*.xlsx) 上遇到了同样的问题,我按照以下方式解决了这个问题,我认为你可以对 csv 文件做同样的事情:
- 如果您的 PC 驱动器中有一个名为 (file.xlsx) 的文件,则:
1- 使用这个简单的代码从您的硬盘上传它:
from google.colab import files
uploaded = files.upload()
按下(选择文件)并将其上传到您的 google 驱动器。
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(这是单击 "obtain link to share" 时出现的长字母数字字符串)。然后您可以使用 pandas' read_csv:
访问 file.csv
import pandas as pd
frm = pd.read_csv('file.csv', header=None)
第 1 步 - 将您的 Google 驱动器安装到 Collaboratory
from google.colab import drive
drive.mount('/content/gdrive')
第 2 步 - 现在您将在左侧窗格(文件资源管理器)中看到您的 Google 驱动器文件。右键单击您需要导入的文件和 select çopy 路径。然后像往常一样导入 pandas,使用这个复制的路径。
import pandas as pd
df=pd.read_csv('gdrive/My Drive/data.csv')
完成!
因此,如果您不在 google colab 上工作,您可能会简单地编写如下内容:
df = pd.read_csv('path_of_the_csv_file')
在 google colab 中,您唯一需要知道的就是 csv 文件的路径。
如果您按照我在下面写的步骤进行操作,您的问题就会得到解决:
- 首先,将 CSV 文件上传到您的 google 驱动器。
- 然后,打开您的 google colab notebook 并单击左侧的 'Files' 图标
页面的一侧。
- 然后,单击 'Google Drive Folder' 图标以安装您的 Google 驱动器。
- 然后,查找您上传到 google 驱动器的 csv 文件(第 1 步),
并复制它的路径。
- 获得路径后,将其视为普通路径并在代码中使用它。
它应该看起来像这样:
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
我正在尝试读取存储在本地计算机上的 csv 文件。 (仅供参考,来自 Kaggle 的巨大数据是 here。)
从
from google.colab import files
uploaded = files.upload()
我迷路的地方是如何从这里将它转换为数据帧。上面回答中列出的sample google notebook page不说了。
我正在尝试使用 from_dict
命令将字典 uploaded
转换为数据帧,但无法使其工作。有一些关于将 dict 转换为 dataframe here 的讨论,但这些解决方案不适用于我(我认为)。
所以总结一下,我的问题是:
How do I convert a csv file stored locally on my files to pandas dataframe on Google Colaboratory?
Pandas read_csv
应该可以解决问题。您需要将上传的字节包装在 io.StringIO
中,因为 read_csv
需要一个类似文件的对象。
这是一个完整的例子: 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
或者,您也可以使用 github 导入文件。 您可以以此为例:https://drive.google.com/file/d/1D6ViUx8_ledfBqcxHCrFPcqBvNZitwCs/view?usp=sharing
此外 google 不会将文件保存更长时间,因此您可能不得不 运行 一次又一次 github 片段。
Colab google:正在从您的 PC 上传 csv 我在 excel 文件 (*.xlsx) 上遇到了同样的问题,我按照以下方式解决了这个问题,我认为你可以对 csv 文件做同样的事情: - 如果您的 PC 驱动器中有一个名为 (file.xlsx) 的文件,则: 1- 使用这个简单的代码从您的硬盘上传它:
from google.colab import files
uploaded = files.upload()
按下(选择文件)并将其上传到您的 google 驱动器。
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(这是单击 "obtain link to share" 时出现的长字母数字字符串)。然后您可以使用 pandas' read_csv:
import pandas as pd
frm = pd.read_csv('file.csv', header=None)
第 1 步 - 将您的 Google 驱动器安装到 Collaboratory
from google.colab import drive
drive.mount('/content/gdrive')
第 2 步 - 现在您将在左侧窗格(文件资源管理器)中看到您的 Google 驱动器文件。右键单击您需要导入的文件和 select çopy 路径。然后像往常一样导入 pandas,使用这个复制的路径。
import pandas as pd
df=pd.read_csv('gdrive/My Drive/data.csv')
完成!
因此,如果您不在 google colab 上工作,您可能会简单地编写如下内容:
df = pd.read_csv('path_of_the_csv_file')
在 google colab 中,您唯一需要知道的就是 csv 文件的路径。
如果您按照我在下面写的步骤进行操作,您的问题就会得到解决:
- 首先,将 CSV 文件上传到您的 google 驱动器。
- 然后,打开您的 google colab notebook 并单击左侧的 'Files' 图标 页面的一侧。
- 然后,单击 'Google Drive Folder' 图标以安装您的 Google 驱动器。
- 然后,查找您上传到 google 驱动器的 csv 文件(第 1 步), 并复制它的路径。
- 获得路径后,将其视为普通路径并在代码中使用它。 它应该看起来像这样:
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