[Note] Lire un fichier depuis un autre répertoire

Vous n'avez pas cette expérience? ?? ?? ?? ??

??? "D'accord, je vais l'analyser!"

sample1.py


pd.read_csv("sample.csv")

error


[Errno 2] No such file or directory: 'sample.csv'

??? "Oh? Vous ne pouvez pas lire?"

??? "Oui, c'est un nom de fichier, donc ce n'est pas bon. D'accord, je vais copier le chemin et le lire."

sample2.py


pd.read_csv("/clientA/user_data/payment/sample.csv")

error


[Errno 2] No such file or directory: 'sample.csv'

"Oh? Que se passe-t-il? Que dois-je faire plutôt que dire?"

??? "Cela ne peut pas être aidé. Voulez-vous stocker sample.csv dans votre répertoire de travail ..."

Oui. Alors, avez-vous une telle expérience? Ce n'est pas grave quand il n'y a pas encore beaucoup de procédures de fichiers, mais c'est très gênant lorsque la capacité d'un gros fichier ou d'un PC est faible en premier lieu. J'étais un pythoner débutant qui a répété une telle chose, mais j'ai fait quelque chose pour éviter d'augmenter le nombre de fichiers d'analyse.

Cette fois, le mémorandum est également ouvert au public.

supposition

Cette fois, je parlerai de l'hypothèse que la structure du fichier est comme ça.

client_list --- clientA --- user_data --- payment ---  sample.csv
             |           |- analyze --- case1 -- analyze.ipynb
             |           |- quest_data ---・ ・ ・
             |           :
             |           :
             |
             |- clientB
             |- clientC
             |- clientD
             :
             :

Ce répertoire de fichiers transmettra votre environnement d'une manière facile à comprendre! Je viens de le donner à titre d'exemple, donc mon environnement n'est pas comme ça. (C'est mal de dire que la structure du fichier n'est pas naturelle)

Que veux-tu dire à la fin ** Le fichier que vous souhaitez référencer se trouve dans une autre racine du répertoire ci-dessus ** C'est-à-dire. (Oui, je ne sais pas si les mots sont corrects, mais c'est transmis !!!!)

Solution

pd.read_csv("Spécification du chemin de fichier")

Je le savais, mais tout d'abord, le concept de «répertoire de cant» est devenu important.

Qu'est-ce qu'un répertoire cant?

Le répertoire cant est simplement ** "le répertoire (dossier) sur lequel vous travaillez actuellement" **. Dans le sketch ci-dessus, enfin, en stockant sample.csv``` dans le répertoire de travail, la solution était de stocker le fichier de travail dans ce "répertoire cant" afin que les données d'analyse puissent être traitées. C'est pourquoi c'est devenu.

Comment parcourir les fichiers en dehors du répertoire cant?

Pour faire référence à un fichier en dehors du répertoire cant, il est important de retourner dans le répertoire où se trouve le fichier auquel vous voulez vous référer.

client_list --- clientA --- user_data --- payment ---  sample.csv
             |           |- analyze --- case1 -- analyze.ipynb
             |           |- quest_data ---・ ・ ・

Dans cet exemple, vous devez remonter deux répertoires et descendre `` / user_data / payment / sample.csv``` à partir de là.

Si vous pouvez écrire du code pour retourner dans le répertoire ci-dessus, vous devriez pouvoir le lire.

Comment retourner le répertoire ci-dessus


#Quand revenir en arrière
"./" or "../"

#Quand revenir en arrière
"././" or "../../"

Et . / Ou ../ '' est ajouté lors de la spécification du chemin du fichier, et il peut être lu. Veuillez augmenter le nombre de répertoires à renvoyer.

Par conséquent, dans cet exemple,

pd.read_csv("../../user_data/payment/sample.csv")

Vous pouvez le lire en écrivant.

finalement

Je suis un pythonier inexpérimenté, donc si vous faites une erreur ou faites une erreur, faites-le moi savoir. Bonne analyse de la vie!

Connaissance des haricots

«Dossier à analyser», «Dossier de stockage des données» et «Dossier de sortie» Si vous séparez ces trois éléments, vous pouvez travailler très bien et confortablement.

output_dir = "./output"
input_dir =  "./input/"

df.read_csv(input_dir+"sample.csv")


sample2.to_csv(output_dir + "sample2.csv")

Recommended Posts

[Note] Lire un fichier depuis un autre répertoire
Lire ligne par ligne à partir d'un fichier avec Python
Comment lire des fichiers dans différents répertoires
Lire et écrire des fichiers
Écrire et lire des fichiers
[Note] Importation de fichiers dans le répertoire parent en Python
Python> Lire à partir d'une chaîne multiligne au lieu d'un fichier> io.StringIO ()
Enregistrez le fichier d'authentification Pydrive dans un répertoire différent du script
Lisez le fichier en Python avec un chemin relatif depuis le programme
Lire le fichier
Script pour générer un répertoire à partir d'un fichier json
[GO language] Lisons le fichier YAML
Créer un fichier deb à partir d'un package python
Lire le fichier de données de caractères avec numpy
Comment lire un fichier CSV avec Python 2/3
Lire un fichier contenant des lignes brouillées en Python
Python --Lisez les données d'un fichier de données numériques et recherchez la ligne de régression multiple.
Exécutez des fichiers Python à partir de HTML en utilisant Django
Monter le répertoire d'un autre serveur avec sshfs
Juste une note
Python2 / numpy> Remplacer uniquement une colonne spécifique d'un fichier par les données de colonne d'un autre fichier> numpy.c_
Faire une copie d'un fichier Google Drive à partir de Python
Python --Lire les données d'un fichier de données numériques et calculer la covariance
J'ai essayé d'exécuter python à partir d'un fichier chauve-souris
Backtrader Comment importer un indicateur depuis un autre fichier
Remarque DJango: depuis le début (en utilisant une vue générique)
Lire le code QR à partir du fichier image avec Python (Mac)
Remarque DJango: depuis le début (création d'une vue à partir d'un modèle)
Lire les paramètres de journalisation à partir d'un fichier externe avec Flask
J'ai essayé de lire les données d'un fichier en utilisant Node.js.
Script Python qui crée un fichier JSON à partir d'un fichier CSV
[Python] Démarrez un fichier de commandes à partir de Python et passez des variables.
[Python] Opération de fichier / répertoire
[Note] Lecture de fichier ~ Python ~
Lire le fichier CSV: pandas
Mesure de la surcharge de lecture de fichier
Une note sur __call__
Une note sur le sous-processus
Une note sur mprotect (2)
Lire le fichier csv Python
[Python] Lire depuis Stdin
Créer une animation gif à partir d'un fichier de numéro de série avec matplotlib
Accédez au fichier avec un chemin relatif à partir du script d'exécution.
[Python] Lire les arguments de ligne de commande à partir du nom de fichier ou de stdin