迹忆客 专注技术分享

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

在 Python 中将 CSV 读取为 NumPy 数组

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

本教程将讨论如何从 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']]

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

本文地址:

相关文章

在 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 浏览次数:155 分类:Python

本教程讲解了我们如何在 Matplotlib 中使用 matplotlib.pyplot.plot()、matplotlib.pyplot.vlines()、matplotlib.pyplot.hlines()方法和 matplotlib.collection.LineCollection 绘制任意线条。

扫一扫阅读全部技术教程

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

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便