[英]How to modify certain columns in a Matrix in Armadillo C++
我在 Armadillo 10x10 矩阵中有一个非常简单的任务。 任务是将列1,3,4
和9
的值更改为sqrt(2)
。
我已经使用 (B is only one) 完成了任务
B.cols(columns) *= sqrt(2);
我为每一列都做了这个并且工作了。
这里的问题是阅读文档可以使用
B.cols( vector of col indices )
我想学习如何使用它,但似乎没有任何效果
将“col 索引向量”声明为uvec并将列索引放入其中。
mat B(10, 11, fill::randu);
uvec column_indices = { 1, 3, 4, 9 };
B.cols(column_indices) *= sqrt(2);
(需要说明的是,C++ 具有从零开始的索引,因此第一列的索引为 0,而不是 1)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.