Ich muss einige .csv
Dateien lesen und einige Operationen ausführen. Insbesondere muss ich .csv
lesen, wo die Daten in verschiedenen Spalten gespeichert sind. Insbesondere müssen die Daten folgendes Format:Python: Wie CSV-Datei auf eine effiziente Weise zu lesen?
myfile_0.csv
Time InfD Com ComN
0 3 4 0
1 2 5 1
Die Datei viele Einträge enthält, und ich habe zu tun, dass für verschiedene parameters
eine der Prozess sehr langsam ist. Im Folgenden wird die Aufgabe, die ich
for i in parameters:
f = folder+'myfile_%d.csv'%i
df = pd.read_csv(f)
D = df.InfD/V
C = (df.Com/df.ComN)
size = TC - len(C)
if len(C) < TC:
CC = np.lib.pad(C, (0,size), 'constant', constant_values=(1))
DD = np.lib.pad(D, (0,size), 'constant', constant_values=(0))
cf = CC*(1-DD)
else:
C = C[0:TC]
D = D[0:TC]
cf = C*(1-D)
Ich frage mich, zu tun haben, wenn es eine effizientere ist das gleiche Problem zu lösen.
Sie haben werden, um eine ganze Datei für jeden Wert in 'parameters' zu lesen. Es gibt keinen Weg dahin. –
Versuchen Sie, [line_profiler] (https://github.com/rkern/line_profiler) zu verwenden, um den Engpass zu identifizieren, und optimieren Sie dann diese Zeilen. Auch Ihre Frage ist im Moment eine Ja/Nein-Frage und die Antwort ist "Ja, wahrscheinlich." – ChrisP
Ich dachte, "Import CSV" statt Pandas Datareframe – emax