Armadillo - 初始化矩阵并用值填充矩阵
Armadillo - initialize a matrix and fill matrix with values
我想按列填充矩阵。我有以下 numpy 代码,我很难将其转换为 C++ Armadillo。
# numpy code
m = np.zeros((nrows, nrows))
# fill a matrix of lags
for i in range(0, nrows):
r = np.roll(vec_v, i)
m[:, i] = r
其中 vec_v
是单个列向量,nrows
是该列向量中的行数。
这是我的犰狳尝试
# armadillo conversion
mat m(nrows, nrows); m.zeroes();
for(int i = 0; i < nrows; i++){
vec r = shift(vec_v, i)
m.col(i).fill(r);
}
初始化矩阵然后按列填充值的推荐方法是什么。
=
运算符应该在这里工作。
mat m(nrows, nrows); m.zeros();
for(int i = 0; i < nrows; i++){
vec r = shift(vec_v, i);
m.col(i) = r;
}
可以简化矩阵初始化,避免生成临时r
向量,如下所示。
mat m(nrows, nrows, fill::zeros);
for(int i = 0; i < nrows; i++){
m.col(i) = shift(vec_v, i);
}
我想按列填充矩阵。我有以下 numpy 代码,我很难将其转换为 C++ Armadillo。
# numpy code
m = np.zeros((nrows, nrows))
# fill a matrix of lags
for i in range(0, nrows):
r = np.roll(vec_v, i)
m[:, i] = r
其中 vec_v
是单个列向量,nrows
是该列向量中的行数。
这是我的犰狳尝试
# armadillo conversion
mat m(nrows, nrows); m.zeroes();
for(int i = 0; i < nrows; i++){
vec r = shift(vec_v, i)
m.col(i).fill(r);
}
初始化矩阵然后按列填充值的推荐方法是什么。
=
运算符应该在这里工作。
mat m(nrows, nrows); m.zeros();
for(int i = 0; i < nrows; i++){
vec r = shift(vec_v, i);
m.col(i) = r;
}
可以简化矩阵初始化,避免生成临时r
向量,如下所示。
mat m(nrows, nrows, fill::zeros);
for(int i = 0; i < nrows; i++){
m.col(i) = shift(vec_v, i);
}