Python to_分类返回2列矩阵

Python to_分类返回2列矩阵,python,numpy,keras,python-3.5,Python,Numpy,Keras,Python 3.5,我使用keras中提供的to_分类函数将float类型的numpy ndarray转换为二进制对应项。Y的维数为2144x1,但函数返回的数组的维数为2144x2。 如何从to_Category获取2144x1数组? Y仅由0和1组成(浮点型) 函数调用: y_binary = to_categorical(Y) keras.utils.to\u categorical(y,num\u classes=None) 将类向量(整数)转换为二进制类矩阵 但它看起来不支持float(它为所有数字提供

我使用keras中提供的to_分类函数将float类型的numpy ndarray转换为二进制对应项。Y的维数为2144x1,但函数返回的数组的维数为2144x2。 如何从to_Category获取2144x1数组? Y仅由0和1组成(浮点型) 函数调用:

y_binary = to_categorical(Y)
keras.utils.to\u categorical(y,num\u classes=None)

将类向量(整数)转换为二进制类矩阵

但它看起来不支持float(它为所有数字提供了一个底层)


一种解决方案是,将其放大到正整数并转换为分类。

如果已经有0和1,为什么不使用
Y.astype(bool)
将类型从浮点转换为布尔?
to_categorical([0, 0.1, 0.2, 0.3, 1])
[[ 1.  0.]
 [ 1.  0.]
 [ 1.  0.]
 [ 1.  0.]
 [ 0.  1.]]


to_categorical([0, 1, 2, 3, 1])
[[ 1.  0.  0.  0.]
 [ 0.  1.  0.  0.]
 [ 0.  0.  1.  0.]
 [ 0.  0.  0.  1.]
 [ 0.  1.  0.  0.]]