numpy.loadtxt 不读取多项式回归的 np.longfloat 数据

numpy.loadtxt does not read in np.longfloat data for polynomial regression

提问人:javery 提问时间:11/7/2023 最后编辑:javery 更新时间:11/7/2023 访问量:28

问:

我有一个逗号分隔的文件,其中包含科学记数法的值。我尝试通过以下两种方式读取数据,但这两种方式实际上似乎都没有使用我指定的 longdouble 数据类型。它恢复为标准的 64 位浮点数。我怎样才能以适当的精度阅读这篇文章?保持尽可能高的精度至关重要。

data = np.loadtxt("C:\\path\\to\\file.txt", delimiter=',', dtype=np.longfloat)
print(data.dtype)

with open("C:\\path\\to\\file.txt", 'rb') as f:
    lines = f.readlines()
    data = np.genfromtxt(lines, delimiter=',', dtype=np.longdouble)

print(data.dtype)

data_2 = data.astype(np.longdouble)
print(data_2.dtype)

> float64
> float64
> float64

为了获得其他上下文,我继续使用读入的数据进行多项式回归。不幸的是,数据具有较高的条件数,因此对输入的微小更改将导致不同的结果,因此我需要尽可能避免浮点误差。我目前正在根据读入的列生成回归特征。然后,我使用 sklearn 的 LinearRegession 对象对我创建的特征执行回归。如果有更好的方法可以做到这一点,请告诉我。

python-3.x numpy 回归 精度

评论


答: 暂无答案