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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。