在 Python 中将 NumPy 数组写入 CSV
在本教程中,我们将讨论如何将 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 文件。
相关文章
Pandas DataFrame DataFrame.shift() 函数
发布时间:2024/04/24 浏览次数:133 分类:Python
-
DataFrame.shift() 函数是将 DataFrame 的索引按指定的周期数进行移位。
Python pandas.pivot_table() 函数
发布时间:2024/04/24 浏览次数:82 分类:Python
-
Python Pandas pivot_table()函数通过对数据进行汇总,避免了数据的重复。
Pandas read_csv()函数
发布时间:2024/04/24 浏览次数:254 分类:Python
-
Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。
Pandas 多列合并
发布时间:2024/04/24 浏览次数:628 分类:Python
-
本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。
Pandas loc vs iloc
发布时间:2024/04/24 浏览次数:837 分类:Python
-
本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。
在 Python 中将 Pandas 系列的日期时间转换为字符串
发布时间:2024/04/24 浏览次数:894 分类:Python
-
了解如何在 Python 中将 Pandas 系列日期时间转换为字符串