如何将 .npy 文件作为 numpy 数组加载到 Google Colab 上的虚拟机中
How to load a .npy file as a numpy array into the Virtual machine on Google Colab
我有一些数据集和标签,它们基本上是 numpy 保存的扩展名为 .npy 的文件。
我已经在我的 google 驱动器中保存了 train.npy 和 train_labels.npy。
在使用 Google Colab 时,我必须使用该数据。我能够在我的驱动器中找到文件夹和数据文件的 ID。如何将这些数据文件加载到 Google Colab 使用的虚拟机内存中?
解决了。
首先按照文档中的说明进行简单的身份验证
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)
我创建了一些辅助函数,如果您知道文件在驱动器上的文件名和文件夹 ID,它会获取文件 ID。文件夹 ID 是 drive.google.com/../../folders/
中 link 的最后一部分
def get_file_from_drive(folder_id, file_name):
file_list = drive.ListFile({'q': "'" + folder_id + "' in parents and
trashed=false"}).GetList()
for file in file_list:
if file['title'] == file_name:
return file['id']
def upload_file_to_drive(file_name, file_data):
uploaded = drive.CreateFile({'title': file_name})
uploaded.SetContentString(file_data)
uploaded.Upload()
print('Uploaded file with ID {}'.format(uploaded.get('id')))
drive_folder_id = '<Folder ID>'
此函数将文件从google驱动器上传到colab允许您使用的虚拟系统中。
def upload_data_system():
downloaded = drive.CreateFile({'id': get_file_from_drive(drive_folder_id, 'train.npy')})
downloaded.GetContentFile('train.npy')
downloaded = drive.CreateFile({'id': get_file_from_drive(drive_folder_id, 'train_labels.npy')})
downloaded.GetContentFile('train_labels.
upload_data_system()
中提琴!您的文件已上传到文件系统,并且可以像在本地完成的那样使用简单的 python 加载到内存中。为了验证,运行 这个在 colab 上。您应该会看到您的文件
import os
from os import listdir
for f in os.listdir('.'):
if os.path.isfile(f):
print(f)
现在将您的 numpy 文件加载为 np.load(path_to_file_in_filesystem)
我有一些数据集和标签,它们基本上是 numpy 保存的扩展名为 .npy 的文件。
我已经在我的 google 驱动器中保存了 train.npy 和 train_labels.npy。
在使用 Google Colab 时,我必须使用该数据。我能够在我的驱动器中找到文件夹和数据文件的 ID。如何将这些数据文件加载到 Google Colab 使用的虚拟机内存中?
解决了。
首先按照文档中的说明进行简单的身份验证
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)
我创建了一些辅助函数,如果您知道文件在驱动器上的文件名和文件夹 ID,它会获取文件 ID。文件夹 ID 是 drive.google.com/../../folders/
中 link 的最后一部分def get_file_from_drive(folder_id, file_name):
file_list = drive.ListFile({'q': "'" + folder_id + "' in parents and
trashed=false"}).GetList()
for file in file_list:
if file['title'] == file_name:
return file['id']
def upload_file_to_drive(file_name, file_data):
uploaded = drive.CreateFile({'title': file_name})
uploaded.SetContentString(file_data)
uploaded.Upload()
print('Uploaded file with ID {}'.format(uploaded.get('id')))
drive_folder_id = '<Folder ID>'
此函数将文件从google驱动器上传到colab允许您使用的虚拟系统中。
def upload_data_system():
downloaded = drive.CreateFile({'id': get_file_from_drive(drive_folder_id, 'train.npy')})
downloaded.GetContentFile('train.npy')
downloaded = drive.CreateFile({'id': get_file_from_drive(drive_folder_id, 'train_labels.npy')})
downloaded.GetContentFile('train_labels.
upload_data_system()
中提琴!您的文件已上传到文件系统,并且可以像在本地完成的那样使用简单的 python 加载到内存中。为了验证,运行 这个在 colab 上。您应该会看到您的文件
import os
from os import listdir
for f in os.listdir('.'):
if os.path.isfile(f):
print(f)
现在将您的 numpy 文件加载为 np.load(path_to_file_in_filesystem)