[PYTHON] [Hinweis] Lesen Sie eine Datei aus einem anderen Verzeichnis

Sie haben diese Erfahrung nicht? ?? ?? ?? ??

??? "Okay, ich werde es analysieren!"

sample1.py


pd.read_csv("sample.csv")

error


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

??? "Oh? Kannst du nicht lesen?"

??? "Ja, es ist ein Dateiname, also ist es nicht gut. Okay, ich werde den Pfad kopieren und lesen."

sample2.py


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

error


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

??? "Oh? Was ist los? Was soll ich tun, anstatt zu sagen?"

??? "Es kann nicht geholfen werden. Möchten Sie sample.csv in Ihrem Arbeitsverzeichnis speichern ..."

Ja. Hast du so eine Erfahrung? Es ist in Ordnung, wenn es noch nicht viele Dateiverfahren gibt, aber es ist sehr problematisch, wenn die Kapazität einer großen Datei oder eines PCs überhaupt gering ist. Ich war ein Python-Anfänger, der so etwas wiederholte, aber ich habe etwas getan, um die Anzahl der Analysedateien nicht zu erhöhen.

Dieses Mal ist das Memorandum auch für die Öffentlichkeit zugänglich.

Annahme

Dieses Mal werde ich über die Annahme sprechen, dass die Dateistruktur so ist.

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

Dieses Dateiverzeichnis vermittelt Ihre Umgebung auf leicht verständliche Weise! Ich habe es nur als Beispiel gegeben, also ist meine Umgebung nicht so. (Es ist NG zu sagen, dass die Dateistruktur unnatürlich ist)

Was willst du am Ende sagen? ** Die Datei, auf die Sie verweisen möchten, befindet sich in einem anderen Stammverzeichnis des obigen Verzeichnisses ** Das heißt. (Ja, ich weiß nicht, ob die Wörter korrekt sind, aber es wird übertragen !!!!)

Lösung

pd.read_csv("Dateipfadspezifikation")

Ich wusste das, aber zuallererst wurde das Konzept des "Cant Directory" wichtig.

Was ist ein Cant-Verzeichnis?

Das Cant-Verzeichnis ist einfach ** "das Verzeichnis (Ordner), an dem Sie gerade arbeiten" **. Im obigen Sketch bestand die Lösung schließlich darin, durch Speichern von "sample.csv" im Arbeitsverzeichnis die Arbeitsdatei in diesem "Cant-Verzeichnis" zu speichern, damit die Analysedaten verarbeitet werden können. Deshalb wurde es.

Wie durchsuche ich Dateien außerhalb des Cant-Verzeichnisses?

Um auf eine Datei außerhalb des Cant-Verzeichnisses zu verweisen, ist es wichtig, zu dem Verzeichnis zurückzukehren, in dem sich die Datei befindet, auf die Sie verweisen möchten.

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

In diesem Beispiel müssen Sie zwei Verzeichnisse sichern und von dort aus `` `/ user_data / payment / sample.csv``` nach unten gehen.

Wenn Sie Code schreiben können, um in das darüber liegende Verzeichnis zurückzukehren, sollten Sie ihn lesen können.

So geben Sie das obige Verzeichnis zurück


#Wann man zurück geht
"./" or "../"

#Wann gehen zwei zurück?
"././" or "../../"

Und `. /` Oder `../` wird hinzugefügt, wenn der Dateipfad angegeben wird, und es kann gelesen werden. Bitte erhöhen Sie die Anzahl der zurückzugebenden Verzeichnisse.

Daher wird in diesem Beispiel

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

Sie können es durch Schreiben lesen.

Schließlich

Ich bin ein unerfahrener Python. Wenn Sie also einen Fehler machen oder einen Fehler machen, lassen Sie es mich bitte wissen. Habt ein gutes Leben analysieren!

Bohnenwissen

"Zu analysierender Ordner", "Datenspeicherordner" und "Ausgabeordner" Wenn Sie diese drei trennen, können Sie sehr schön und bequem arbeiten.

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

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


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

Recommended Posts

[Hinweis] Lesen Sie eine Datei aus einem anderen Verzeichnis
Lesen Sie mit Python Zeile für Zeile aus der Datei
So lesen Sie Dateien in verschiedenen Verzeichnissen
Dateien lesen und schreiben
Dateien schreiben und lesen
[Hinweis] Import von Dateien in das übergeordnete Verzeichnis in Python
Python> Aus einer mehrzeiligen Zeichenfolge anstelle einer Datei lesen> io.StringIO ()
Speichern Sie die Pydrive-Authentifizierungsdatei in einem anderen Verzeichnis als das Skript
Lesen Sie die Datei in Python mit einem relativen Pfad aus dem Programm
Datei lesen
Skript zum Generieren eines Verzeichnisses aus einer JSON-Datei
[GO-Sprache] Lesen wir die YAML-Datei
Erstellen Sie eine Deb-Datei aus einem Python-Paket
Zeichendatendatei mit numpy lesen
Lesen einer CSV-Datei mit Python 2/3
Lesen Sie eine Datei mit verstümmelten Linien in Python
Python - Lesen Sie Daten aus einer numerischen Datendatei und suchen Sie die multiple Regressionslinie.
Führen Sie Python-Dateien mit Django aus HTML aus
Hängen Sie das Verzeichnis eines anderen Servers mit sshfs ein
Nur eine Notiz
Python2 / numpy> Ersetzen Sie nur eine bestimmte Spalte in einer Datei durch Spaltendaten aus einer anderen Datei> numpy.c_
Erstellen Sie eine Kopie einer Google Drive-Datei aus Python
Python - Lesen Sie Daten aus einer numerischen Datendatei und berechnen Sie die Kovarianz
Ich habe versucht, Python aus einer Bat-Datei auszuführen
Backtrader So importieren Sie einen Indikator aus einer anderen Datei
DJango Hinweis: Von Anfang an (mit einer generischen Ansicht)
Lesen Sie den QR-Code aus der Bilddatei mit Python (Mac).
DJango Hinweis: Von Anfang an (Erstellen einer Ansicht aus einer Vorlage)
Lesen Sie die Protokollierungseinstellungen mit Flask aus einer externen Datei
Ich habe versucht, Daten aus einer Datei mit Node.js zu lesen.
Python-Skript, das eine JSON-Datei aus einer CSV-Datei erstellt
[Python] Starten Sie eine Batchdatei aus Python und übergeben Sie Variablen.
[Python] Datei- / Verzeichnisoperation
[Hinweis] Datei lesen ~ Python ~
Lesen Sie die CSV-Datei: pandas
Overhead-Messung zum Lesen von Dateien
Ein Hinweis zu __call__
Ein Hinweis zum Unterprozess
Ein Hinweis zu mprotect (2)
Lesen Sie die Python-CSV-Datei
[Python] Von Stdin lesen
Erstellen Sie mit matplotlib eine GIF-Animation aus einer Seriennummerndatei
Greifen Sie über das Ausführungsskript mit einem relativen Pfad auf die Datei zu.
[Python] Befehlszeilenargumente aus Dateiname oder Standard lesen