it-swarm.com.ru

Как загрузить CSV-файл (и использовать его) с Google Drive в Google Colab Laboratory

Хотел попробовать Python, и Google Colab Laboratory показался самым простым вариантом. У меня есть несколько файлов на моем диске Google, и я хотел загрузить их в Google Colab Laboratory. так вот код, который я использую:

!pip install -U -q PyDrive

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)

# 2. Create & upload a file text file.
uploaded = drive.CreateFile({'xyz.csv': 'C:/Users/abc/Google Drive/def/xyz.csv'})
uploaded.Upload()
print('Uploaded file with title {}'.format(uploaded.get('title')))

import pandas as pd
xyz = pd.read_csv('Untitled.csv')

По сути, для пользователя "abc" я хотел загрузить файл xyz.csv из папки "def". Я могу загрузить файл, но когда я спрашиваю заголовок, он говорит, что заголовок "Без названия". Когда я спрашиваю Id файла, который был загружен, он меняется каждый раз, поэтому я не могу использовать Id.

Как мне прочитать файл ??? и установить правильное имя файла ???

xyz = pd.read_csv('Untitled.csv') doesnt work
xyz = pd.read_csv('Untitled') doesnt work
xyz = pd.read_csv('xyz.csv') doesnt work

Вот некоторые другие ссылки, которые я нашел ..

Как импортировать и прочитать файл полки или Numpy в Google Colab Laboratory?

загрузить локальные файлы данных в колабораторию

12
Akhil

Чтобы прочитать CSV-файл с моего привода Google в колабораторию, мне нужно было выполнить следующие шаги:

1) Сначала мне нужно было авторизовать колабораторию для доступа к моему приводу Google с помощью PyDrive. Я использовал их пример кода для этого. (вставлено ниже)

2) Мне также нужно было зайти на свой drive.google.com, чтобы найти целевой идентификатор файла, который я хотел загрузить. Я нашел это, щелкнув правой кнопкой мыши по файлу и скопировав общую ссылку для идентификатора. Идентификатор выглядит примерно так: '1BH-rffqv_1auzO7tdubfaOwXzf278vJK' 

3) Затем я запустил загруженный. GetContentFile ('myName.csv') - введите желаемое имя (в вашем случае это xyz.csv). 

Кажется, это работает для меня!

Я использовал код, который они предоставили в своем примере:

# Code to read csv file into colaboratory:
!pip install -U -q PyDrive
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)

#2. Get the file
downloaded = drive.CreateFile({'id':'1BH-rffqv_1auzO7tdubfaOwXzf278vJK'}) # replace the id with id of file you want to access
downloaded.GetContentFile('xyz.csv')  

#3. Read file as panda dataframe
import pandas as pd
xyz = pd.read_csv('xyz.csv') 
15
Cendria

Создание файла принимает тело файла в его первом параметре. Если вы проверите документацию для file create есть ряд полей, которые вы можете заполнить. В приведенном ниже примере вы добавили бы их в разделенные запятыми file_metadata.

file_metadata = {'name': 'photo.jpg'}
media = MediaFileUpload('files/photo.jpg',
                        mimetype='image/jpeg')
file = drive_service.files().create(body=file_metadata,
                                    media_body=media,
                                    fields='id').execute()

Я предлагаю вам прочитать file upload в разделе документации, чтобы получить более полное представление о том, как происходит загрузка и какие файлы действительно можно прочитать с Google Drive. Я не уверен, что это даст вам доступ к Google colaborate

Возможно исправить для вашего кода.

Я не разработчик Python, но я думаю, вы можете установить свой заголовок, выполнив это.

uploaded = drive.CreateFile({'xyz.csv': 'C:/Users/abc/Google Drive/def/xyz.csv',
                             'name': 'xyz.csv'})
0
DaImTo

Ладно, я почти уверен, что опаздываю, но я бы хотел выложить это на всякий случай ... Я думаю, что самый простой способ сделать это -

from google.colab import drive
drive.mount("/content/drive")

Будет сгенерирована ссылка, нажмите на нее и войдите в систему с помощью Google OAuth, вставьте ключ в ячейку colab, и все готово!

проверьте список доступных файлов на боковой панели слева и скопируйте путь к файлу, к которому вы хотите получить доступ. Прочтите его, как и любой другой файл.

0
gavin