如何将20000×1的0/1整数列表y_pred转换为同维度浮点型矩阵
整数列表转20000×1浮点型矩阵的实现方案
下面分不同使用场景给出可直接运行的实现代码:
方法1:基于Numpy转换(最通用,科学计算场景首选)
如果你需要的是常规科学计算用的矩阵,直接用Numpy转换即可:
import numpy as np # 现有y_pred已经是整型列表,直接转浮点后调整维度 y_pred_float_matrix = np.array(y_pred, dtype=np.float32).reshape(-1, 1)
参数说明:
dtype可以按需选择np.float32或者np.float64,分别对应单精度、双精度浮点reshape(-1, 1)里的-1会自动匹配列表总元素数,你当前列表长度为20000,转换后自动得到(20000,1)尺寸的矩阵,也可以直接写死为reshape(20000, 1)严格固定尺寸。
方法2:转换为深度学习框架浮点张量
如果是用于PyTorch/TensorFlow训练场景,直接转对应框架的张量即可:
PyTorch 版本
import torch y_pred_float_tensor = torch.tensor(y_pred, dtype=torch.float32).reshape(-1, 1)
TensorFlow 版本
import tensorflow as tf y_pred_float_tensor = tf.cast(tf.constant(y_pred), tf.float32) y_pred_float_tensor = tf.reshape(y_pred_float_tensor, (-1, 1))
方法3:纯Python实现(无需第三方依赖)
如果不需要依赖任何外部库,可以直接生成原生二维浮点列表:
y_pred_float_matrix = [[float(x)] for x in y_pred]
内容的提问来源于stack exchange,提问作者Hermi
相关产品推荐
相关产品推荐

