迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 Python 中将 NumPy 数组写入 CSV

作者:迹忆客 最近更新:2024/03/12 浏览次数:

在本教程中,我们将讨论如何将 numpy 数组存储在 CSV 文件中。


使用 pandas 数据框将 NumPy 数组保存在 CSV 文件中

在这种方法中,我们将首先将数组保存在 pandas DataFrame 中,然后将其转换为 CSV 文件。

以下代码显示了我们如何实现这一目标。

import pandas as pd
import numpy as np

a = np.asarray([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
pd.DataFrame(a).to_csv("sample.csv")

pd.DataFrame 函数将数组存储在 DataFrame 中,我们只需使用 to_csv() 函数将其导出到 CSV 文件即可。


使用 numpy.savetxt() 函数将 NumPy 数组保存到 CSV 文件中

numpy 模块中的 savetxt() 函数可以将数组保存到文本文件。我们可以指定文件格式,定界符和许多其他参数,以获得所需格式的最终​​结果。

在下面的代码中,我们使用此函数将数组保存在 CSV 文件中。

import numpy as np

a = np.asarray([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

np.savetxt("sample.csv", a, delimiter=",")

使用 tofile() 函数将 NumPy 数组保存到 CSV 文件中

tofile() 函数允许我们将数组写入文本或二进制文件。但是,这种方法有许多缺点。它更像是一种便捷功能,用于快速存储数组数据。信息的准确性会丢失,因为它会将所有内容存储在一行中,因此对于打算用于存档数据的文件来说,此方法不是一个好的选择。这些问题中的一些可以通过将数据作为文本文件输出而以速度和文件大小为代价来克服。

以下代码演示了此函数的用法。

import numpy as np

a = np.asarray([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

a.tofile("sample.csv", sep=",")

使用文件处理方法将 NumPy 数组保存在 CSV 文件中

我们可以使用传统的文件处理方法,但是不建议使用它们,因为此类方法需要根据数组的形状进行许多修改,并且会占用大量内存。

以下代码显示了此方法的示例。

a = np.asarray([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
csv_rows = ["{},{},{}".format(i, j, k) for i, j, k in a]
csv_text = "\n".join(csv_rows)

with open("sample.csv", "w") as f:
    f.write(csv_text)

我们将数组解压缩为一个行列表,然后通过使用 join() 函数加入该列表来返回单个字符串。然后,我们将此字符串写入 CSV 文件。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Python 中将 Tensor 转换为 NumPy 数组

发布时间:2024/03/12 浏览次数:118 分类:Python

在 Python 中,可以使用 3 种主要方法将 Tensor 转换为 NumPy 数组:Tensor.numpy()函数,Tensor.eval()函数和 TensorFlow.Session()函数。

将 PIL 图像转换为 NumPy 数组

发布时间:2024/03/12 浏览次数:153 分类:Python

在 Python 中,可以使用两种主要方法将 PIL 图像转换为 3 维 NumPy 数组:numpy.array()函数和 numpy.asarray()函数。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便