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 n'ai aucune idée de la façon de le faire.

toute aide est la bienvenue

9
demandé sur Saeed 2017-11-10 01:43:17

3 réponses

Téléchargez votre fichier dans Colaboratory Notebook avec ce qui suit:

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

ensuite, vous pouvez atteindre le contenu de votre fichier à partir de uploaded objet et ensuite l'écrire dans un fichier:

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

si vous courez:

!ls

vous verrez le fichier my_data.h5 dans le répertoire courant.

C'est la méthode qui a fonctionné pour moi. Espérons que cela aide.

17
répondu mikazuki 2017-11-15 14:05:36

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 D'entraînement dans le I / O exemple notebook

la première cellule montre 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])))
6
répondu Bob Smith 2017-11-10 01:41:48

Téléchargement de fichiers et de dossiers contiennent des sous-dossiers et des fichiers(images), Colab google:

S'il vous plaît, essayez cette fonction pour télécharger des fichiers et des dossiers à 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 formats différents en utilisant la même manière.

2-pour télécharger un répertoire complet qui a des sous-répertoires et des fichiers: d'abord zip le répertoire en utilisant un zip et utiliser:

dirName = read_dir_file(1)

alors, vous pouvez travailler avec (dirName) comme répertoire racine, comme exemple, si elle a 3 sous-répertoires, disons, (training, validation and test):

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

C'est ça! Profitez-en!

1
répondu Yasser Mustafa 2018-03-24 16:25:43