Numpy 的 savetxt(~)
方法將 Numpy 數組保存為文本文件。
參數
1. fname
| string
文件的名稱。如果該文件與腳本不在同一目錄中,請確保也包含該文件的路徑。
2. X
| array-like
| optional
您要保存的一維或二維數組。
3. fmt
| string
或 sequence<string>
| optional
保存數據的格式。語法遵循 Python 標準字符串格式化程序的語法:
格式 |
說明 |
---|---|
%d |
保存為整數 |
%F |
另存為浮點數 |
%s |
保存為字符串 |
默認情況下, fmt="%.18e"
,這意味著將每個值存儲為具有 18 位精度的浮點數(這是隱式的)(即最多顯示 18 位小數)。
警告
表中的格式並不詳盡
查閱Python的官方文檔來了解詳細信息。
4. delimiter
| string
| optional
用於分隔數據的字符串。默認情況下,分隔符是單個空格。
5. newline
| string
| optional
用於表示新行的字符串。默認情況下,對於一維數組,每個值都存儲在單獨的行中,對於二維數組,每行都存儲在單獨的行中。
6. header
| string
| optional
寫入文件第一行的字符串。默認情況下,不會寫入任何標頭。
7. footer
| string
| optional
寫入文件最底部的字符串。默認情況下,不會寫入頁腳。
8. comments
| string
或 list<string>
| optional
如果指定了頁眉和頁腳,則添加到它們前麵的字符串。目的是將它們標記為評論。默認情況下,comments="#"
。
9. encoding
| string
| optional
寫入文件時使用的編碼(例如"latin-1"、"iso-8859-1")。默認編碼="bytes"。
返回值
None。
例子
基本用法
保存一維 Numpy 整數數組:
x = np.array([3,4,5])
np.savetxt("my_data", x)
這將在與 Python 腳本相同的目錄中創建名為 "my_data"
的以下文本文件:
3.000000000000000000e+00
4.000000000000000000e+00
5.000000000000000000e+00
正如上麵 fmt
參數中所解釋的,所有值都存儲為類型 float
,精度為 18 - 即 18 個零!
由於在本例中這不是您想要的,因此您可以指定 fmt
參數,如下所示:
x = np.array([3,4,5])
np.savetxt("my_data", x, fmt="%d")
這裏,%d
隻是意味著將值存儲為整數。檢查我們的"my_data"
:
3
4
5
我們看到數字確實存儲為整數。
指定分隔符參數
用於分隔值的默認分隔符是單個空格。我們可以使用 delimiter
參數指定一個:
x = np.array([[3,4],[5,6]])
np.savetxt("my_data", x, fmt="%d", delimiter=",")
我們最終得到以下 "my_data"
文本文件:
3,4
5,6
請注意,分隔符僅在數組是二維時才起作用。
指定換行參數
默認情況下,對於一維數組,每個值都存儲在單獨的行中,對於二維數組,每行都存儲在單獨的行中。
要使用 @
來分隔行:
x = np.array([[3,4],[5,6]])
np.savetxt("my_data", x, fmt="%d", newline="@")
輸出如下:
3 4@5 6@
指定標題
要保存帶有標頭的一維整數數組:
x = np.array([3,4,5])
np.savetxt("my_data", x, fmt="%d", header="My numbers")
我們的"my_data"
文件如下:
# My numbers
3
4
5
請注意#
是如何附加到我們指定的標頭中的。您可以使用comments
參數來控製它。
指定頁腳
要保存帶有頁腳的一維整數數組:
x = np.array([3,4,5])
np.savetxt("my_data", x, fmt="%d", footer="My footer")
我們的"my_data"
文件如下:
3
4
5
# My footer
再次注意 #
是如何附加到我們指定的頁腳的。您可以使用comments
參數來控製它。
指定注釋
要保存標頭附加前綴 "// "
的一維整數數組:
x = np.array([3,4,5])
np.savetxt("my_data", x, fmt="%d", header="My numbers", comments="// ")
輸出如下:
// My numbers
3
4
5
請注意,僅當設置了 header
或 footer
時,comments
才相關。另外,默認情況下為 comments="# "
。
相關用法
- Python NumPy savez_compressed方法用法及代碼示例
- Python NumPy save方法用法及代碼示例
- Python NumPy savez方法用法及代碼示例
- Python NumPy sample方法用法及代碼示例
- Python sklearn.cluster.MiniBatchKMeans用法及代碼示例
- Python NumPy squeeze方法用法及代碼示例
- Python scipy.ndimage.binary_opening用法及代碼示例
- Python scipy.signal.windows.tukey用法及代碼示例
- Python scipy.stats.mood用法及代碼示例
- Python str.isidentifier用法及代碼示例
- Python sklearn.metrics.fbeta_score用法及代碼示例
- Python scipy.fft.ihfftn用法及代碼示例
- Python scipy.stats.normaltest用法及代碼示例
- Python scipy.ndimage.convolve1d用法及代碼示例
- Python scipy.stats.arcsine用法及代碼示例
- Python scipy.interpolate.UnivariateSpline.antiderivative用法及代碼示例
- Python NumPy sign方法用法及代碼示例
- Python scipy.linalg.hadamard用法及代碼示例
- Python socket.create_server用法及代碼示例
- Python sklearn.linear_model.PassiveAggressiveRegressor用法及代碼示例
- Python skimage.feature.graycomatrix用法及代碼示例
- Python sympy.rf()用法及代碼示例
- Python sklearn.metrics.make_scorer用法及代碼示例
- Python sklearn.model_selection.ShuffleSplit用法及代碼示例
- Python sklearn.metrics.dcg_score用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 NumPy | savetxt method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。