如何将 NumPy 数组保存到文本文件?

numpyserver side programmingprogramming

Numpy 数组可以使用多种方法保存到文本文件,例如 savetxt() 方法、save() 方法和 dataframe.to_csv() 函数。Numpy 是一个 Python 库,用于进行数值计算、操作数组等。在本文中,我们将讨论将 Numpy 数组保存到文本文件的方法。

方法 1:使用 numpy.savetxt() 函数

numpy.savetxt() 函数只是将 Numpy 数组保存到文本文件。该函数接受两个参数:要保存 Numpy 数组的文件名和数组本身。该数组必须是二维数组,文件将保存为纯文本文件,每个元素之间用分隔符分隔。

示例

在下面的示例中,我们创建一个二维 NumPy 数组 arr,并使用 numpy.savetxt() 函数将其保存到名为"myarray.txt"的文本文件中。文本文件中使用的分隔符是空格,这是默认分隔符。您可以通过在 numpy.savetxt() 函数中指定"delimiter"参数来更改分隔符。

import numpy as np

# 创建二维 NumPy 数组
arr = np.array([[1, 2, 3], [4, 5, 6]])

# 将数组保存到文本文件
np.savetxt('myarray.txt', arr)

输出

1.000000000000000000e+00 2.0000000000000000000e+00 3.000000000000000000e+00
4.000000000000000000e+00 5.000000000000000000e+00 6.00000000000000000000e+00

方法 2:使用 numpy.save() 函数

numpy.save() 函数将数组保存到扩展名为 `.npy` 的二进制文件中。可以使用 numpy.load() 函数将该文件加载回 Python。

示例

在下面的示例中,我们创建一个 NumPy 数组 arr,并使用 numpy.save() 函数将其保存到名为"myarray.npy"的二进制文件中。生成的文件是一个二进制文件,可以使用 numpy.load() 函数将其加载回 Python。

import numpy as np

# 创建一个 NumPy 数组
arr = np.array([1, 2, 3, 4, 5])

# 将数组保存到二进制文件
np.save('myarray.npy', arr)

# 加载已保存的数组
arr_loaded = np.load('myarray.npy')
print(arr_loaded)

输出

[1 2 3 4 5]

方法 3:使用 pandas.DataFrame.to_csv() 函数

dataframe.to_csv() 方法用于将 NumPy 数组保存为 CSV 文件。为此,您需要使用 Pandas 库将二维数组转换为 DataFrame,然后使用 to_csv() 函数保存。Pandas 在 CSV 文件中提供了更多格式化选项。

示例

在下面的示例中,我们首先创建一个二维 NumPy 数组 arr。然后,我们使用 Pandas 将该数组转换为 DataFrame,并将 DataFrame 保存到名为"myarray.csv"的 CSV 文件中。我们将索引和标题参数指定为 False,以将它们从 CSV 文件中排除。CSV 文件中使用的分隔符是逗号,这是 to_csv() 函数的默认分隔符。您可以通过在函数中指定 'sep' 参数来更改分隔符。

import numpy as np
import pandas as pd

# 创建二维 NumPy 数组
arr = np.array([[1, 2, 3], [4, 5, 6]])

# 将数组转换为 DataFrame
df = pd.DataFrame(arr)

# 将 DataFrame 保存为 CSV 文件
df.to_csv('myarray.csv', index=False, header=False)

输出

1,2,3
4,5,6

应用

将 NumPy 数组保存为文本文件是科学计算和数据挖掘中的常见任务分析。以下是一些将 NumPy 数组保存为文本文件的常见应用和场景:-

  • 数据分析 - NumPy 数组广泛用于数据分析,用于存储和操作大型数据集。将 NumPy 数组保存为文本文件,可以轻松地与他人共享数据,或将数据加载到其他编程语言或应用程序中。

  • 机器学习 - 机器学习算法通常需要大型数据集进行训练。将 NumPy 数组保存为文本文件是一种存储这些数据集并在未来的实验或分析中重复使用它们的方法。

  • 信号处理 - NumPy 数组通常用于信号处理应用程序中,以存储和操作音频或图像数据。将 NumPy 数组保存为文本文件,可以轻松将数据加载到其他应用程序中或进行离线分析。

  • 数值模拟 − NumPy 数组广泛用于科学模拟,用于求解微分方程、线性系统和其他数值计算。将 NumPy 数组保存为文本文件,可以轻松保存模拟数据并在以后进行分析。

  • 实验数据 − NumPy 数组可用于存储来自科学实验或测量的实验数据。将 NumPy 数组保存为文本文件是一种以易于共享或以后分析的格式存储数据的方法。

结论

在本文中,我们讨论了如何使用 numpy.savetxt()、numpy.save() 和 pandas.dataframe.to_csv() 等方法将 NumPy 数组保存到文本文件。 savetxt() 函数只是将 numpy 数组保存到文本文件。save() 方法将 numpy 数组保存到二进制文件,该文件可以重新加载到 Python 中。to_csv() 方法将 numpy 数组保存到 CSV 文件。


相关文章