将矩阵从100,调整为100,405416

问题描述

我正在尝试将单点编码数组重塑为(samples,405416)。一键编码后的输出形状是(405416,405416),并且我希望它重塑为(100,405416) ,其中100是样本。

y = []
for i in range(100):
    random_num = randint(0,405416,1)
    y.append(data_enc[random_number])

输出y的形状为(100,)

输出y[0]的形状为(1,405416)

data_enc是一键编码后形状为(405416,405416)的矩阵

解决方法

从输入到重塑矩阵,重塑矩阵应包含相同数量的元素。因此无法将(405416,405416)改成(100,405416)。

当您有100个样本时,onehot编码应产生(100个特征)而不是(特征,特征)。清楚地检查您对Onehot的实施。