从文本文件读取numpy数组返回'nan

0 投票
1 回答
2597 浏览
提问于 2025-04-18 17:07

我正在学习Cohelo和Ricker的书《构建机器学习系统》。

在第20页,我们需要从一个文本文件中读取数据:

data = sp.genfromtxt("c:\web_traffic.tsv", delimiter="\"t")

这是返回的结果:

print(data[:10])
[ nan  nan  nan  nan  nan  nan  nan  nan  nan  nan]

我已经完成了之前的所有步骤,确保文件路径是正确的,并且导入了所有需要的东西。 但奇怪的是,之前是可以正常工作的。 我是不是漏掉了导入某个模块或函数呢?

1 个回答

0

这个例程 np.loadtxt 可以直接读取用制表符分隔的文件,并且能够正确处理 nan(表示缺失值)。

import numpy as np
data = np.loadtxt("c:\web_traffic.tsv")

在这种情况下,data 的形状会和你的文件一致:第一维是行数,第二维是列数。

虽然它不是 sp.genfromtxt,但它是一个非常强大的替代选择。

撰写回答