Как скачать файл из GoogleColab в скрипте Python? - PullRequest
0 голосов
/ 17 января 2019

У меня есть скрипт Python, который создает файл .csv.

Когда я пытаюсь загрузить файл Vectors.csv (файл, созданный кодом) в сценарии с помощью

df.to_csv("Vectors.csv", sep=",", index=False)
files.download("Vectors.csv")  

Я получаю

Traceback (most recent call last):
File "/content/gdrive/My Drive/Deep/makeVectors.py", line 52, in <module>
files.download("Vectors.csv")
File "/usr/local/lib/python3.6/dist-packages/google/colab/files.py", line 178, in download
'name': _os.path.basename(filename),
File "/usr/local/lib/python3.6/dist-packages/google/colab/output/_js.py", line 35, in eval_js
kernel = _ipython.get_kernel()
File "/usr/local/lib/python3.6/dist-packages/google/colab/_ipython.py", line 28, in get_kernel
return get_ipython().kernel
AttributeError: 'NoneType' object has no attribute 'kernel'

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

Браузер: Google Chrome

Ответы [ 2 ]

0 голосов
/ 17 января 2019

Команда Google Colab создала блокнот, посвященный загрузке / загрузке внешних данных. Один из блоков загружает файлы в локальную систему .

Адаптация их примера к кадру данных Pandas df, сохраненному в виде файла CSV:

from google.colab import files
import pandas as pd

df = pd.DataFrame(data={'col1': [1, 2], 'col2': [3, 4]})
df.to_csv('dataframe.csv')

files.download('dataframe.csv')

Более конкретный пример ситуации OP (запуск сценария Python внутри ячейки Colab): сначала сценарий

# makeVectors.py
import pandas as pd
df = pd.DataFrame(data={'col1': [1, 2], 'col2': [3, 4]})
df.to_csv('dataframe.csv')

И клетка Колаб

!python3 makeVectors.py

from google.colab import files
files.download('dataframe.csv')

Во втором примере есть некоторые проблемы, в частности, дополнительные функции, предоставляемые пакетом google.colab (как и любая обычная магия iPython), не будут работать в вызове python3.

0 голосов
/ 17 января 2019

Я не верю, что вы можете так скачивать, поскольку код запускается на удаленной машине (а не на вашей собственной машине). Но вы можете сохранить файлы в своей учетной записи Google Drive и загрузить их оттуда.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...