web-dev-qa-db-fra.com

Comment ouvrir le fichier local sur Jupyter?

En 1]:

path='/Users/Apple/Downloads/train.csv'
open(path).readline()

Out [1]:

FileNotFoundError                         Traceback (most recent call 
last)
<ipython-input-7-7fad5faebc9b> in <module>()
----> 1 open(path).readline()

FileNotFoundError: [Errno 2] No such file or directory: 
'/Users/Apple/Downloads/train.csv'

Je pense que ce code est exactement similaire à celui de nombreux tutoriels et je suis sûr que ce fichier est dans le bon chemin, mais pourquoi cela ne fonctionne-t-il pas?

2
saltfish

De nombreux tutoriels ont dit que nous devrions changer le flux de travail de Jupyter, mais je ne l'ai pas compris. 

Enfin, je trouve un moyen simple: traîne un fichier vers cette partie.

 enter image description here

4
saltfish

Sur osX, votre chemin devrait être:

path = "/Users/name/Downloads/filename"

avec name l'utilisateur actuel connecté

2
Reblochon Masque

Est-ce que vous utilisez ceci sur Windows ou Linux? Si vous utilisez Windows, vous devriez utiliser un chemin tel que C:\\Users\\Apple\\Downloads\train.csv. Si vous êtes sous Linux, vous pouvez suivre le même chemin.

1
Vijith Vijayan

Voici une solution possible (en Python):

Supposons que vous avez un cahier avec un nom de fichier, appelez-le Notebook.ipynb. Vous travaillez actuellement dans ce bloc-notes et souhaitez accéder à d'autres dossiers et fichiers autour de celui-ci. Voici son chemin:

import os
notebook_path = os.path.abspath("Notebook.ipynb")

En d'autres termes, utilisez simplement le module os et obtenez le chemin absolu de votre cahier (c'est aussi un fichier!). À partir de là, utilisez le module os et votre chemin pour naviguer.

Par exemple, si votre train.csv se trouve dans un dossier appelé "Jeux de données" et que l'ordinateur portable se trouve juste à côté de ce dossier, vous pouvez obtenir les données suivantes:

train_csv = os.path.join(os.path.dirname(notebook_path), "Datasets/train.csv")
with open(train_csv) as file:
    #....etc

En guise de conclusion, le bloc-notes porte un nom de fichier et, tant que votre langue prend en charge les manipulations de noms de chemin (par exemple, le module os en Python), vous pouvez probablement utiliser le nom de fichier du bloc-notes.

Enfin, si votre code échoue, c’est probablement parce que vous essayez d’accéder aux fichiers locaux (comme le dossier "Téléchargements" de votre Mac) lorsque vous travaillez dans un bloc-notes en ligne (comme Kaggle, qui héberge votre environnement pour vous, en ligne et en toute sécurité). loin de votre Mac), ou vous avez déplacé ou supprimé quelque chose dans ce chemin. C’est ce que le module os de Python est censé faire; il trouvera le chemin du fichier, que ce soit sur votre Mac ou sur un serveur Kaggle.

0
user4234032

Je ne sais pas si c'est ce que vous cherchiez, mais cela me semble quelque chose comme ça.

Ceci est pour linux (ubuntu) mais peut-être que ça marche aussi sur mac:

Si le fichier est un pdf appelé 'book.pdf' et se trouve dans vos téléchargements, alors 

import subprocess

path='/home/user/Downloads/book.pdf'
subprocess.call(['evince', path])

où evince est le programme qui ouvre des fichiers PDF à Ubuntu

0
antadlp

Je vous suggère de le tester d’abord: Copiez ce train.csv dans le même répertoire que ce script jupyter puis changez le chemin en train.csv pour vérifier s’il peut être chargé avec succès. 

Si oui, cela signifie que l'entrée du chemin précédent est un problème

Sinon, cela signifie que le fichier lui-même a refusé votre accès à celui-ci, ou que son vrai nom de fichier peut être quelque chose comme: train.csv.<hidden extension>

0
Kelvin