Загружать файлы локальных данных в Colaboratory

Мне просто интересно, можно ли загружать локальные файлы данных (например, файлы .xlsx или .csv, которые на моем диске Google) в Colaboratory?

Ответ 1

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

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

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

затем

for fn in uploaded.keys():
  print('User uploaded file "{name}" with length {length} bytes'.format(
      name=fn, length=len(uploaded[fn])))

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

Отредактируйте для дополнительного пояснения: в uploaded словаре будут ключи выбранных имен файлов - так что, если, например, вы выберете файл my_test.txt, вы получите доступ к этому файлу, используя uploaded['my_test.txt'].

Ответ 2

Сначала выполнение этой ячейки должно создать встроенную кнопку "Выбрать файлы"

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

После выбора файла (ов) uploaded будет использоваться словарь ключей (имена файлов) и значений (объекты закодированного файла). Чтобы декодировать файлы для библиотеки, например Pandas, попробуйте

import pandas as pd
import io
df = pd.read_csv(io.StringIO(uploaded['filename.csv'].decode('utf-8')))

После этого ваш файл данных df должен быть готов к работе

Ответ 3

Помещая это в качестве альтернативы для людей, которые предпочитают другой способ загрузить больше файлов - это в основном позволяет загружать файлы с помощью Google Диска.

Запустите приведенный ниже код (нашел это где-то раньше, но я не могу найти источник снова - кредиты тому, кто его написал!):

!apt-get install -y -qq software-properties-common python-software-properties module-init-tools
!add-apt-repository -y ppa:alessandro-strada/ppa 2>&1 > /dev/null
!apt-get update -qq 2>&1 > /dev/null
!apt-get -y install -qq google-drive-ocamlfuse fuse

from google.colab import auth
auth.authenticate_user()
from oauth2client.client import GoogleCredentials
creds = GoogleCredentials.get_application_default()
import getpass

!google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL
vcode = getpass.getpass()
!echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}

Нажмите на первую ссылку, которая предложит вам войти в Google; после чего появится другой, который будет запрашивать разрешение на доступ к вашему Google Диску.

Затем запустите это, создав каталог с именем "диск" и связав свой Google Drive с ним:

!mkdir -p drive
!google-drive-ocamlfuse drive

Если вы сейчас сделаете !ls, появится каталог drive, и если вы сделаете !ls drive, вы сможете увидеть все содержимое вашего Google Диска.

Так, например, если я сохраню свой файл с именем abc.txt в папке с именем ColabNotebooks на своем Google Диске, теперь я могу получить к нему доступ по пути drive/ColabNotebooks/abc.txt

Ответ 4

Да, все эти сценарии поддерживаются.

Чтобы узнать, как получить доступ к локальным файлам и файлам диска, ознакомьтесь с примером блокнота ввода-вывода.

Для доступа к файлам xls вы захотите загрузить файл в Google Sheets. Затем вы можете использовать gspread рецепты в той же записной книжке примера ввода/вывода.

Недавно добавленный способ загрузки локальных файлов заключается в использовании вкладки "Файлы" в правой части окна.

enter image description here

Оттуда вы можете загрузить локальный файл, используя кнопку "Загрузить".

enter image description here

(Вы также можете загрузить файлы, щелкнув их правой кнопкой мыши в дереве файлов.)

Ответ 5

Скажем, у вас есть папка на вашем диске Google с именем Colab и там находится файл csv. Чтобы загрузить этот файл

import pandas as pd
titanic = pd.read_csv("drive/Colab/Titanic.csv")
titanic.head(5)

До этого вам может потребоваться выполнить следующую команду:

Сначала запустите эти коды, чтобы установить необходимые библиотеки и выполнить авторизацию.

!apt-get install -y -qq software-properties-common python-software-properties module-init-tools
!add-apt-repository -y ppa:alessandro-strada/ppa 2>&1 > /dev/null
!apt-get update -qq 2>&1 > /dev/null
!apt-get -y install -qq google-drive-ocamlfuse fuse
from google.colab import auth
auth.authenticate_user()
from oauth2client.client import GoogleCredentials
creds = GoogleCredentials.get_application_default()
import getpass
!google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL
vcode = getpass.getpass()
!echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}

При запуске кода выше вы должны увидеть результат следующим образом: введите описание изображения здесь

Нажмите ссылку, скопируйте код подтверждения и вставьте ее в текстовое поле.

После завершения процесса авторизации

смонтируйте свой Google Диск:

!mkdir -p drive
!google-drive-ocamlfuse drive

Ответ 6

Это двухэтапный процесс.

Шаг 1: Сначала вызовите селектор файлов с помощью в вашей записной книжке colab со следующим кодом

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

это приведет вас к окну файлового браузера

Шаг 2: Чтобы загрузить содержимое файла в кадр данных Pandas, используйте следующий код

import pandas as pd
import io
df = pd.read_csv(io.StringIO(uploaded['iris.csv'].decode('utf-8')))
print(df)

Ответ 7

Чтобы получить данные из вашей системы в Colab, попробуйте это:

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

Выберите файл, который вы хотите загрузить, и нажмите Enter, и все готово. Например, я загрузил изображение и отобразил его, используя код ниже:

import cv2
import numpy as np
from matplotlib import pyplot as plt

img = cv2.imread('image.jpg')
img_cvt = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

plt.imshow(img_cvt)
plt.show()

Ответ 8

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

Способ 1: метод Google Диска

  1. Загрузить файл данных из системной памяти на диск Google.
  2. Смонтировать гугл диск в колаб

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

  3. Then-> path = "/gdrive/My Drive/filename"

Теперь вы можете получить доступ к файлам Google Drive в Google Colab.

Способ 2: прямая загрузка

from google.colab import files
def getLocalFiles():
    _files = files.upload()
    if len(_files) >0:
       for k,v in _files.items():
         open(k,'wb').write(v)
getLocalFiles()

Способ 3: использование файлов импорта

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

Ответ 9

Вы можете использовать этот URL для загрузки ваших файлов в Google Colab:

https://colab.research.google.com/notebooks/io.ipynb#scrollTo=vz-jH8T_Uk2c

перейдите в Local file system>Downloading files to your local file system Затем запустите код. После этого появится кнопка браузера для загрузки ваших файлов с вашего ПК.