it-swarm.com.de

Importieren Sie Daten in Google Colaboratory

Wie können private Daten häufig in Google Colaboratory-Notizbücher importiert werden? Kann ich ein nicht öffentliches Google-Blatt importieren? Sie können nicht aus Systemdateien lesen. Die einführenden Dokumente verlinken in eine Anleitung zur Verwendung von BigQuery , aber das scheint ein bisschen ... sehr.

87
Grae

Ein offizielles Beispielnotizbuch zum Herunterladen/Herunterladen lokaler Dateien und zur Integration mit Drive und Arbeitsblättern ist hier verfügbar: https://colab.research.google.com/notebooks/io.ipynb

Das Freigeben von Dateien ist am einfachsten, wenn Sie Ihr Google Drive einhängen.

Führen Sie dazu in einer Codezelle Folgendes aus:

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

Danach werden Ihre Drive-Dateien angehängt und Sie können sie mit dem Dateibrowser im Seitenbereich durchsuchen.

enter image description here

Hier ist ein volles Beispielnotizbuch

111
Bob Smith

Hochladen

from google.colab import files
files.upload()

Herunterladen

files.download('filename')

Verzeichnis auflisten

files.os.listdir()
25
井上智文

Einfache Möglichkeit, Daten von Ihrem googledrive zu importieren - dadurch sparen Sie Zeit (nicht wissen, warum Google diese Schritt für Schritt nicht explizit auflistet). 

INSTALLIEREN UND AUTHENTIFIZIEREN PYDRIVE

     !pip install -U -q PyDrive ## you will have install for every colab session

     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)

HOCHLADEN

wenn Sie Daten von einem lokalen Laufwerk hochladen müssen: 

    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])))

ausführen und dies wird eine Schaltfläche zum Auswählen der Datei anzeigen - finden Sie Ihre Upload-Datei - klicken Sie auf Öffnen

Nach dem Hochladen wird Folgendes angezeigt: 

    sample_file.json(text/plain) - 11733 bytes, last modified: x/xx/2018 - %100 done
    User uploaded file "sample_file.json" with length 11733 bytes

DATEI FÜR NOTIZBUCH ERSTELLEN

Wenn sich Ihre Datendatei bereits in Ihrem Laufwerk befindet, können Sie mit diesem Schritt fortfahren. 

Jetzt ist es in Ihrem Google-Laufwerk. Suchen Sie die Datei in Ihrem Google-Laufwerk und klicken Sie mit der rechten Maustaste. Klicken Sie auf "Mitbenutzbarer Link". Sie erhalten ein Fenster mit: 

    https://drive.google.com/open?id=29PGh8XCts3mlMP6zRphvnIcbv27boawn

Kopieren - '29PGh8XCts3mlMP6zRphvnIcbv27boawn' - Dies ist die Datei-ID. 

In Ihrem Notebook:

    json_import = drive.CreateFile({'id':'29PGh8XCts3mlMP6zRphvnIcbv27boawn'})

    json_import.GetContentFile('sample.json') - 'sample.json' is the file name that will be accessible in the notebook.

DATEN IN NOTIZBUCH EINFUHREN

So importieren Sie die von Ihnen hochgeladenen Daten in das Notizbuch (eine Json-Datei in diesem Beispiel - wie Sie laden, hängt von Datei/Datentyp ab (.txt, .csv usw.) 

    sample_uploaded_data = json.load(open('sample.json'))

Jetzt können Sie drucken, um zu sehen, dass die Daten vorhanden sind:

    print(sample_uploaded_data)
15
E G

Der einfachste Weg, den ich gemacht habe, ist: 

  1. Machen Sie mit Ihrem Datensatz ein Repository auf Github 
  2. Klonen Sie Ihr Repository mit! git clone --recursive [GITHUB LINK REPO]
  3. Finden Sie, wo sich Ihre Daten befinden (Befehl! Ls)
  4. Datei mit Pandas öffnen, wie Sie es in einem normalen Jupyter-Notebook tun. 
6
Rafał B.

Auf diese Weise können Sie Ihre Dateien über Google Drive hochladen.

Führen Sie den folgenden Code aus (ich habe ihn irgendwo zuvor gefunden, aber ich kann die Quelle nicht wieder finden - Credits an den, der ihn geschrieben hat!):

!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}

Klicken Sie auf den ersten Link, der Sie auffordert, sich bei Google anzumelden. Danach erscheint ein weiteres Fenster, in dem Sie um Erlaubnis zum Zugriff auf Ihr Google Drive gebeten werden.

Führen Sie dann diesen Befehl aus, der ein Verzeichnis mit dem Namen "Laufwerk" erstellt und Ihr Google Drive mit diesem verknüpft:

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

Wenn Sie jetzt einen !ls ausführen, gibt es ein Verzeichnislaufwerk, und wenn Sie einen !ls drive ausführen, können Sie den gesamten Inhalt Ihres Google Drive sehen.

Wenn ich beispielsweise meine Datei mit dem Namen abc.txt in einem Ordner mit dem Namen ColabNotebooks in meinem Google Drive speichere, kann ich jetzt über einen Pfad drive/ColabNotebooks/abc.txt darauf zugreifen.

6
yl_low

Schneller und einfacher Import aus Dropbox:

!pip install dropbox
import dropbox
access_token = 'YOUR_ACCESS_TOKEN_HERE' # https://www.dropbox.com/developers/apps
dbx = dropbox.Dropbox(access_token)

# response = dbx.files_list_folder("")

metadata, res = dbx.files_download('/dataframe.pickle2')

with open('dataframe.pickle2', "wb") as f:
  f.write(res.content)
3
delica

Schritt 1 - Montieren Sie Ihr Google Drive in ein Collaboratory

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

Schritt 2 - Nun sehen Sie Ihre Google Drive-Dateien im linken Fensterbereich (Datei-Explorer). Klicken Sie mit der rechten Maustaste auf die Datei, die Sie importieren müssen, und wählen Sie "Kopierpfad . Importieren Sie anschließend wie üblich in Pandas diesen kopierten Pfad.

import pandas as pd
df=pd.read_csv('gdrive/My Drive/data.csv')

Erledigt!

3
Garima Jain

Die einfachste Lösung, die ich bisher gefunden habe, die perfekt für kleine bis mittelgroße CSV-Dateien geeignet ist, ist:

  1. Erstellen Sie eine geheime Gist auf Gist.github.com und laden Sie Ihre Datei hoch (oder kopieren Sie sie und fügen Sie sie ein).
  2. Klicken Sie auf die Ansicht Raw und kopieren Sie die URL der Rohdatei.
  3. Verwenden Sie die kopierte URL als Dateiadresse, wenn Sie pandas.read_csv(URL) aufrufen.

Dies funktioniert möglicherweise nicht, um eine Textdatei zeilenweise oder binäre Dateien zu lesen.

2

Auf der linken Leiste eines jeden Labors gibt es einen Abschnitt namens "Files" . Laden Sie Ihre Dateien dort hoch und verwenden Sie diesen Pfad 

"/content/YourFileName.extension"

zB: pd.read_csv('/content/Forbes2015.csv');

1
Vivek Solanki

Sie können meine Implementierungen auch unter google.colab und PyDrive unter https://github.com/ruelj2/Google_drive verwenden. Dies macht es viel einfacher.

!pip install - U - q PyDrive  
import os  
os.chdir('/content/')  
!git clone https://github.com/ruelj2/Google_drive.git  

from Google_drive.handle import Google_drive  
Gd = Google_drive()  

Wenn Sie dann alle Dateien in ein Google Drive-Verzeichnis laden möchten, klicken Sie einfach auf 

Gd.load_all(local_dir, drive_dir_ID, force=False)  

Oder einfach eine bestimmte Datei mit

Gd.load_file(local_dir, file_ID)
1
Jean-Christophe

Es wurde gelöst, finden Sie hier Details und verwenden Sie bitte die folgende Funktion: https://stackoverflow.com/questions/47212852/how-to-import-and-read-a-shelve-or-numpy- File-in-Google-Colaboratory/49467113 # 49467113

from google.colab import files
import zipfile, io, os

    def read_dir_file(case_f):
        # author: yasser mustafa, 21 March 2018  
        # case_f = 0 for uploading one File and case_f = 1 for uploading one Zipped Directory
        uploaded = files.upload()    # to upload a Full Directory, please Zip it first (use WinZip)
        for fn in uploaded.keys():
            name = fn  #.encode('utf-8')
            #print('\nfile after encode', name)
            #name = io.BytesIO(uploaded[name])
        if case_f == 0:    # case of uploading 'One File only'
            print('\n file name: ', name)
            return name
        else:   # case of uploading a directory and its subdirectories and files
            zfile = zipfile.ZipFile(name, 'r')   # unzip the directory 
            zfile.extractall()
            for d in zfile.namelist():   # d = directory
                print('\n main directory name: ', d)
                return d
    print('Done!')
0
Yasser Mustafa

wenn Sie dies ohne Code tun möchten, ist es ziemlich einfach. Zippen Sie Ihren Ordner in meinem Fall

dataset.Zip

klicken Sie dann in Colab mit der rechten Maustaste auf den Ordner, in den Sie diese Datei einfügen möchten, und klicken Sie auf Hochladen, um diese Zip-Datei hochzuladen. Danach schreiben Sie diesen Linux-Befehl.

!unzip <your_Zip_file_name>

sie können sehen, dass Ihre Daten erfolgreich hochgeladen wurden.

0
Arham Aalam

Hier können Sie Dateien von einem Google-Laufwerk in Notebooks importieren.

Öffnen Sie das Jupyter-Notizbuch, führen Sie den folgenden Code aus und schließen Sie die Authentifizierung ab

!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}

sobald Sie den obigen Code eingegeben haben, führen Sie den folgenden Code aus, um das Google-Laufwerk bereitzustellen

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

Dateien von Google-Laufwerk in Notebooks importieren (Bsp .: Colab_Notebooks/db.csv)

lassen Sie uns sagen, dass Ihre Dataset-Datei sich im Colab_Notebooks-Ordner befindet und der Name db.csv lautet

import pandas as pd
dataset=pd.read_csv("drive/Colab_Notebooks/db.csv")

Ich hoffe, es hilft 

0
Ravi G