水平堆栈2d Numpy阵列与3d Numpy阵列

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了水平堆栈2d Numpy阵列与3d Numpy阵列相关的知识,希望对你有一定的参考价值。

我正在为机器学习生成我的特征数据集,并且我有一个2d numpy数组X,其中X.shape =(n,d) - n个样本,d个特征。

现在我使用one-hot-encoding-f生成一个新功能,其中f.shape =(n,1,k) - n个样本,k个标签。

将这个新功能添加到现有要素数据集中的最佳方法是什么?

答案

单热矢量的第二个维度是多余的,因此您可以删除它并使用f作为形状(n, k)的2D数组。 你会做的事情如下:

new_data = np.concatenate((X, f.squeeze()), axis=1)

其中squeeze()函数从您的数组中删除所有1维(即f.squeeze().shape == (n, k)

干杯

以上是关于水平堆栈2d Numpy阵列与3d Numpy阵列的主要内容,如果未能解决你的问题,请参考以下文章

利用Python中的numpy.ndarray.reshape()对阵列形状进行调整

text numpy导入多阵列错误

numpy.tile 阵列

使用可变来创建特定大小的numpy的阵列

Python将numpy数组的列表转换为2d数组

将蒙版阵列 2d 应用到 3d