如何从特征矩阵中获取不连续的数据"block"?
How can I get a discontiguous "block" of data from an eigen matrix?
假设我想应用一些通用操作,一个矩阵,该矩阵由其值的某些子集组成,这些子集不一定是连续的。我该怎么做?
如果值是连续的,我将简单地使用 Eigen::block
操作,但如果它们不是呢?
一个应用可能是我有一个正整数的特征矩阵:
Eigen::Matrix<int, 4, 1> mat;
mat << 4, 1, 2, 8;
我想返回第 0、第 2 和第 3 个值。如果它们是连续的(第 0、第 1 和第 2),我可以简单地在此矩阵上使用 block
操作,但在这种情况下我该怎么办?
如何重新排列元素以使它们连续?
1 0 0 0 4 4
0 0 1 0 x 1 = 2
0 0 0 1 2 8
0 0 0 0 8 0
相关文章:
- QT QOpenGLWidget:如何在不使用数据块复制的情况下修改VBO中的单个顶点值?
- 不将数据 socket.io c++(客户端)发送到 nodejs(服务器)socket.io
- 向量的内存位置不连续
- C++创建空 HDF5 文件而不是数据集的代码
- 即使类不包含数据,C++ 14 是否仍会生成默认函数?
- 有没有办法将不连续的捕获组组合到单个正则表达式中?
- 如何删除 Eigen3 矩阵中某些不连续的行和列?
- 它不显示数据,只显示永无止境的循环
- 在不复制数据的情况下,将double数组转换为只有double成员的structs数组
- 有没有一种方法可以在不复制数据的情况下从string_view创建字符串流
- 类不命名数据类型?
- 如何在不复制数据的情况下将 cv::Mat 转换为 2d 标准::矢量
- 为什么 sys 套接字 recv 函数不填充数据但返回字节长度?
- C++ 在节点内存储对数据对象的引用,而不复制数据
- 我无法从串行端口发送连续数据
- ESP8266 I2C 从站不确认数据
- C++ 通过 UDP 发送数据包,但不接收数据包
- 不可变数据模型的内存管理
- 如何从特征矩阵中获取不连续的数据"block"?
- 递归类型真的是构建不连续的任意大小数据结构的唯一方法吗