gpt4 book ai didi

eigen - 如何将特征 block 深度复制到向量中?

转载 作者:行者123 更新时间:2023-12-04 12:41:29 24 4
gpt4 key购买 nike

我加载了一个特征矩阵 A(5,12),我想分配一个新的特征向量作为矩阵 A 第一行的前 7 个值。不知何故,它不起作用...

后来我意识到 block 返回一个指向原始数据的指针。如何将block深拷贝到Eigen Vector中?

Eigen::MatrixXd A(5,12);
Eigen::VectorXd B(12); B = A.row(0);
Eigen::VectorXd C(7); C = B.head(7);

最佳答案

blockcolrowhead等 block 方法返回原始数据的 View ,但是运算符 = 总是执行深拷贝,所以你可以简单地写:

VectorXd C = A.row(0).head(7);

这将执行单个深拷贝。使用 Eigen 3.4 slicing API ,你还可以写:

VectorXd C = A(0,seqN(0,7));

关于eigen - 如何将特征 block 深度复制到向量中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58615947/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com