[PYTHON] Geben Sie csv mit unterschiedlicher Anzahl von Ziffern für jede Spalte mit numpy aus

Bei der Ausgabe des durch maschinelles Lernen berechneten Vorhersageergebnisses

Möglicherweise möchten Sie die Anzahl der Stellen des Ausgabewerts anpassen.

In numpy können Sie csv und tsv mit numpy.savetxt () ausgeben, aber Sie können die Anzahl der Stellen anpassen, indem Sie zu diesem Zeitpunkt den Parameter fmt angeben.

In [1]: import numpy as np

In [2]: np.savetxt("output.csv", [[0.1, 0.2, 0.3], [0.4, 0.5, 0.6]])

In [3]: cat output.csv
1.000000000000000056e-01 2.000000000000000111e-01 2.999999999999999889e-01
4.000000000000000222e-01 5.000000000000000000e-01 5.999999999999999778e-01

In [4]: np.savetxt("output.csv", [[0.1, 0.2, 0.3], [0.4, 0.5, 0.6]], fmt="%.5f")

In [5]: cat output.csv
0.10000 0.20000 0.30000
0.40000 0.50000 0.60000

Tatsächlich können Sie mehrere dieser Parameter im Listenformat angeben. Wenn Sie Parameter wie "fmt = ["% .0f ","% .1f ","% .5f "]" festlegen, wird jede Spalte (jede Spalte) mit der angegebenen Anzahl von Ziffern ausgegeben.

In [6]: np.savetxt("output.csv", [[0.1, 0.2, 0.3], [0.4, 0.5, 0.6]], fmt=["%.0f", "%.1f", "%.5f"])

In [7]: cat output.csv
0 0.2 0.30000
0 0.5 0.60000

In [8]: np.savetxt("output.csv", [[0.1, 0.2, 0.3], [0.4, 0.5, 0.6]], fmt=["%.0e", "%.1e", "%.5e"])

In [9]: cat output1.csv
1e-01 2.0e-01 3.00000e-01
4e-01 5.0e-01 6.00000e-01

Wenn Sie jedoch jede Spalte angeben, muss diese in allen Spalten angegeben werden. Wenn die Anzahl der Spalten nicht übereinstimmt, tritt ein Fehler auf.

In [10]: np.savetxt("output.csv", [[0.1, 0.2, 0.3], [0.4, 0.5, 0.6]], fmt=["%.0e", "%.1e"])
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-11-6d7d74124420> in <module>()
----> 1 np.savetxt("output.csv", [[0.1, 0.2, 0.3] ,[0.4, 0.5, 0.6]], fmt=["%.0e", "%.1e"])

[...]

AttributeError: fmt has wrong shape.  ['%.0e', '%.1e']

Dies ist nützlich, wenn sich die ID in der ersten Spalte befindet oder wenn die erklärende Variable float ist, die Zielvariable jedoch von einem anderen Typ wie int ist.

Referenz

Recommended Posts

Geben Sie csv mit unterschiedlicher Anzahl von Ziffern für jede Spalte mit numpy aus
Holen Sie sich die Anzahl der Ziffern
Reversibles Verwürfeln von Ganzzahlen in Python
Geben Sie csv mit unterschiedlicher Anzahl von Ziffern für jede Spalte mit numpy aus
Erweitern Sie eine beliebige Anzahl von Argumenten mit yasnippet
So ermitteln Sie die Anzahl der Stellen in Python
Konvertieren Sie Daten mit Form (Anzahl der Daten, 1) in (Anzahl der Daten,) mit numpy.
CSV-Ausgabe von Impulsdaten mit Raspberry Pi (CSV-Ausgabe)
Speichern Sie die Ausgabe der bedingten GAN für jede Klasse ~ Mit der cGAN-Implementierung von PyTorch ~
Ermitteln Sie die Anzahl der Vorkommen für jedes Element in der Liste
Holen Sie sich die Anzahl der Ziffern
Protokolldatei mit Job (Notizbuch) von Cloud Pak for Data ausgeben
Ausgabe in eine CSV-Datei mit Python
Schreiben Sie NumPy stückweise für CuPy um
4. Nacht der Schleife mit für
CSV-Ausgabe von Pulsdaten mit Raspberry Pi (Analogeingang mit Python prüfen)
Mit ReportingAPI + Cloud-Funktionen können Sie die Anzahl der Besuche auf jeder Seite ermitteln