我可以在不复制任何数据的情况下通过向量附加本征矩阵吗?

法比安

是否可以在不复制任何数据的情况下将特征向量附加到另一个矩阵?给定矩阵m和向量,b我想修改矩阵m,以便m = [m, b] 不复制数据那有可能吗?

一个例子是:

#include <Eigen/Core>
using namespace Eigen;
int main()
{
    MatrixXd m(2,2);
    m << 0, 1, 2, 3;
    VectorXd b(2);
    b << 4, 5;
    return 0;
}

我尝试着用ggael对一个相关问题的精彩答复这个问题询问如何在不复制数据的情况下创建新矩阵,而我想修改现有矩阵。我可以conservativeResize将列附加b到其中,m但仅以分配新内存为代价。有人对如何进行有任何想法吗?

tz

我能想到的唯一的解决办法,是存储mb从一开始就同一个矩阵:

Eigen::MatrixXd mb(2,2+1);
Eigen::Ref<Eigen::MatrixXd> m = mb.leftCols(2);
Eigen::Ref<Eigen::VectorXd> b = mb.col(2);

之后这些线mb读出到更大的块/可写的引用mb矩阵和它们留只要有效mb且不能调整大小(或破坏)。但是,您无法轻松调整大小m(可以使用新的展示位置,但是我怀疑您是否确实需要这样做)。

如果你已经有了分配数据mb并希望有彼此相邻的实际数据,您将需要复制的东西(除非该数据是彼此相邻的话)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在不复制的情况下使用std :: string?

如何在不复制代码的情况下消除耦合?

在不复制.dll的情况下运行.exe

我可以在没有任何实例变量的情况下使用decltype吗?

如何在不复制向量的情况下将Vec <T>转换为Vec <U>?

我可以在不完全复制结构的情况下将向量移动到结构内部吗?

如何在不复制列的情况下合并Pandas数据框

是否可以在不复制数据的情况下扩展间隙缓冲区?

我可以在没有任何WooCommerce页面的情况下使用WooCommerce功能吗?

是否可以在不复制C#8中的元素的情况下遍历结构数组?

如何在不复制现有数据的情况下插入新行

我可以在不复制数据的情况下在NumPy数组中合并非相邻维度吗?

如何在不复制的情况下将一个向量移动到另一个向量

在不复制的情况下将云数据源注册为Databricks中的全局表

我可以在不使用文件缓存的情况下更快地复制大文件吗?

python-在不复制数据的情况下重复numpy数组

我可以在不附加的情况下查看tmux会话中发生了什么吗?

我们可以在不打开任何Office dll的情况下打印docx文件吗?

是否可以在不复制参数字符串的情况下读取symlink值?

如何在不复制数据透视表的情况下复制它?

我可以在不选择任何超链接样式的情况下将超链接附加到动画 div 吗?

我可以在没有 SuiteAnalytics 的情况下通过 ODBC 连接到 NetSuite 数据吗?

我可以在不调用 .profile 的情况下通过 SSH 进入我的帐户吗?

如何在不复制空单元格的情况下复制过滤的数据

我可以在没有注释名称的情况下获得任何注释值吗?

我可以在不中断复制的情况下更改 RDS 只读副本的实例类型吗?

Excel:如何在不复制过滤表中的数据的情况下求和?

是否可以在不复制数据的情况下将 Vec<&[u8]> 展平为 &[u8] ?

如何在不复制元素的情况下交换数组