首页 > 解决方案 > h5py - 将数据集中的 dtype 从 int/float 转换为 bool?

问题描述

因此,为了让您了解我的数据集的结构,当我执行 print(hf["y_train"][0]) 时,我得到以下结果: [3.2355e-05 3.3180e-05 1.0000e+00]

第三列中的值是 1.0 或 0.0,我要做的是将 1.0s 转换为 True,将 0.0s 转换为 False。

我已经尝试了很多东西,但无济于事。

标签: pythonnumpyh5py

解决方案


这似乎不是 HDF5 / h5py 问题。似乎数据已按应有的方式存储float并正在读取为float

bool在阅读后转换为,您可以尝试np.isclose使用默认容差级别:

A = np.array([3.2355e-05, 3.3180e-05, 1.0000e+00])

res = np.isclose(A, 1)

array([False, False,  True])

推荐阅读