在 Python 中将 CSV 读取为 NumPy 数组
本教程将讨论如何从 CSV 文件读取数据并将其存储在 numpy 数组中。
使用 numpy.genfromtxt()
函数将 CSV 数据读取到 NumPy 数组
genfromtxt()
函数通常用于从文本文件加载数据。我们可以使用此函数从 CSV 文件读取数据,并将其存储在 numpy 数组中。该函数有许多可用参数,使更容易以所需的格式加载数据。我们可以使用此函数的不同参数来指定分隔符,处理缺失值,删除指定的字符并指定数据的数据类型。
例如,
from numpy import genfromtxt
data = genfromtxt("sample.csv", delimiter=",", skip_header=1)
print(data)
输出:
[[1. 2. 3.]
[4. 5. 6.]]
由此衍生出许多其他函数,例如 recfromtxt()
和 recfromcsv()
,它们可以执行相同的功能,但具有不同的默认值。
在下面的代码中,我们将使用 recfromcsv()
文件从 CSV 文件中读取数据。
import numpy as np
data = np.recfromcsv("sample.csv", skip_header=0)
print(data)
输出:
[(1, 2, 3) (4, 5, 6)]
请注意,我们不必将定界符指定为逗号,也不必指定其他值来指定标题行。
使用 pandas
数据框将 CSV 数据读取到 NumPy 数组
我们还可以利用 pandas
数据框将 CSV 数据读取到数组中。为此,我们将数据读取到 DataFrame 中,然后使用 pandas
库中的 values()
函数将其转换为 numpy()
数组。
以下代码实现了这一点。
from pandas import read_csv
df = read_csv("sample.csv")
data = df.values
print(data)
输出:
[[1 2 3]
[4 5 6]]
使用 csv
模块将 CSV 数据读取到 NumPy 数组
csv
模块用于有效地将数据读取和写入 CSV 文件。此方法将使用此模块从 CSV 文件读取数据并将其存储在列表中。然后,我们将继续将此列表转换为 numpy 数组。
下面的代码将对此进行解释。
import csv
import numpy as np
with open("sample.csv", "r") as f:
data = list(csv.reader(f, delimiter=";"))
data = np.array(data)
print(data)
输出:
[['1,2,3']
['4,5,6']]
相关文章
在 Python 中将 Tensor 转换为 NumPy 数组
发布时间:2024/03/12 浏览次数:118 分类:Python
-
在 Python 中,可以使用 3 种主要方法将 Tensor 转换为 NumPy 数组:Tensor.numpy()函数,Tensor.eval()函数和 TensorFlow.Session()函数。
Python NumPy 中的逐元素除法
发布时间:2024/03/12 浏览次数:177 分类:Python
-
有两种主要方法可用于在 Python 中对 NumPy 数组执行逐元素除法,即 numpy.divide() 函数和 / 运算符。
如何在 Matplotlib Pyplot 中显示网格
发布时间:2024/02/04 浏览次数:128 分类:Python
-
本文演示了如何在 Python Matplotlib 中在一个图上画一个网格。使用 grid()函数来绘制网格,并解释了如何改变网格颜色和线条类型。
在 Matplotlib 中的图中添加文字
发布时间:2024/02/04 浏览次数:152 分类:Python
-
本教程展示了我们如何使用 plt.text()方法在 Matplotlib 中为图或轴添加文字。
如何在 Matplotlib 中的多个线条之间进行填充
发布时间:2024/02/04 浏览次数:191 分类:Python
-
`fill_between()` 每次只能填充两条线之间的区域,但是我们可以选择一对行来填充多个线条之间的区域。
如何在 Matplotlib 中画一条任意线
发布时间:2024/02/04 浏览次数:155 分类:Python
-
本教程讲解了我们如何在 Matplotlib 中使用 matplotlib.pyplot.plot()、matplotlib.pyplot.vlines()、matplotlib.pyplot.hlines()方法和 matplotlib.collection.LineCollection 绘制任意线条。
Pandas 在 Matplotlib 柱状图上绘制多列图
发布时间:2024/02/04 浏览次数:174 分类:Python
-
在本教程中,我们将探讨如何使用 `DataFrame` 对象的 `plot()` 方法在柱状图上绘制多列。
如何在 Matplotlib 中绘制数据列表的直方图
发布时间:2024/02/04 浏览次数:167 分类:Python
-
本教程介绍了如何使用 plt.hist()方法从数据列表中绘制直方图。我们可以使用 plt.hist()方法从数据列表中绘制直方图。