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.
Recommended Posts