web-dev-qa-db-fra.com

Comment importer et lire un fichier Shelve ou Numpy dans Google Colaboratory?

J'ai file.npy et je veux le charger dans Google Colaboratory Notebook. Je sais déjà que je dois charger le fichier à partir de Google Drive, mais je ne sais pas comment le faire.

Toute aide est la bienvenue

10
Saeed

Téléchargez votre fichier dans Colaboratory Notebook avec les éléments suivants:

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

Ensuite, vous pouvez accéder au contenu de votre fichier à partir de l'objet uploaded puis l'écrire dans un fichier:

with open("my_data.h5", 'w') as f:
    f.write(uploaded[uploaded.keys()[0]])

Si vous exécutez:

!ls

tu verras my_data.h5 fichier dans le répertoire courant.

C'est la méthode qui a fonctionné pour moi. J'espère que cela aide.

17
mikazuki

En fait, vous pouvez directement télécharger et télécharger des fichiers locaux.

Il y a des exemples de téléchargement/téléchargement de fichiers locaux ainsi que de téléchargement/téléchargement de fichiers Drive dans le bloc-notes d'exemple d'E/S

La première cellule affiche le téléchargement de fichier local:

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

Le téléchargement de fichiers et de dossiers contient des sous-dossiers et des fichiers (images), Colab google:
Veuillez essayer cette fonction pour télécharger des fichiers et des dossiers vers Colab google:

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

    def read_dir_file(case_f):  # 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!')

1- Pour télécharger un fichier:

fileName = read_dir_file(0)

Si le fichier que vous allez télécharger est un fichier .csv, alors:

import pandas as pd
df = pd.read_csv(fileName)
df.head()

Vous pouvez lire n'importe quel fichier ayant différents formats en utilisant la même manière.

2- Pour télécharger un répertoire complet contenant des sous-répertoires et des fichiers: commencez par compresser le répertoire en utilisant un seul Zip et utilisez:

dirName = read_dir_file(1)

Ensuite, vous pouvez travailler avec (dirName) comme répertoire racine, par exemple, s'il a 3 sous-répertoires, disons (formation, validation et test):

train_data_dir = dirName + 'training'  
validation_data_dir = dirName + 'validation'  
test_data_dir = dirName + 'test' 

C'est ça! Prendre plaisir!

2
Yasser Mustafa