标签: column-major-order

Python行主要到列主要顺序向量

有像矩阵一样

ma = [[0.343, 0.351, 0.306], [0.145, 0.368, 0.487]]
Run Code Online (Sandbox Code Playgroud)

我想得到一个像这样的矢量:

[0.343, 0.145, 0.351, 0.368, 0.306, 0.487]
Run Code Online (Sandbox Code Playgroud)

试图得到它,我正在使用numpy,reshape但它不起作用.

a = np.array(ma)
>>> print a.shape
(2, 3)
Run Code Online (Sandbox Code Playgroud)

但我得到:

c = a.reshape(3, 2, order='F')
>>> print c
array([[ 0.343,  0.368],
       [ 0.145,  0.306],
       [ 0.351,  0.487]])
Run Code Online (Sandbox Code Playgroud)

对于任何矩阵大小,最好的方法是什么?我的意思是,例如,如果矩阵不是平方的:

[[0.404, 0.571, 0.025],
 [0.076, 0.694, 0.230],
 [0.606, 0.333, 0.061],
 [0.595, 0.267, 0.138]]
Run Code Online (Sandbox Code Playgroud)

我想得到:

[0.404, 0.076, 0.606, 0.595, 0.571, 0.694, 0.333, 0.267, 0.025, 0.230, 0.061, 0.138]
Run Code Online (Sandbox Code Playgroud)

python numpy row-major-order column-major-order

4
推荐指数
2
解决办法
861
查看次数

犰狳 - 从列向量中的值填充矩阵

我想在arma::mat大小为M x N和arma::vec大小为MN(这是矩阵的列主线性化)之间来回切换.

我可以轻松地从矩阵到矢量使用arma::vectorise,即

arma::vec vector = arma::vectorise(matrix);
Run Code Online (Sandbox Code Playgroud)

但是,我找不到一个简单的方法去反过来.我想在矩阵的第一列中插入向量的前M个值,在第二列中插入第二个M值,依此类推.有没有办法有效地这样做?

c++ vector matrix armadillo column-major-order

3
推荐指数
1
解决办法
2092
查看次数

列与行的2D数组初始化

如果我有一个包含3行和5列的数组,如下所示:

int arr[3][5]={0};
Run Code Online (Sandbox Code Playgroud)

现在我想输入一些数字,所以我喜欢这样:

int arr[3][5] ={10,8,9}
Run Code Online (Sandbox Code Playgroud)

现在数组设置如下:

 10  8  9  0  0
  0  0  0  0  0
  0  0  0  0  0
Run Code Online (Sandbox Code Playgroud)

但我想要的是,实际上数组中的第一个列元素设置如下:

10  0  0  0  0
8   0  0  0  0
9   0  0  0  0
Run Code Online (Sandbox Code Playgroud)

我如何交换或更改数组顺序是这样的?

c arrays row-major-order column-major-order

2
推荐指数
1
解决办法
586
查看次数

Rust 多维数组行是主要的并且紧凑的吗?

我正在为我的项目编写 3D 数学库,我想知道 Rust 是列专业还是行专业?例如,我有一个二维数组作为矩阵,我想将它提供给 C 库(如 OpenGL 或 Vulkan),对于这些库,拥有一个紧密排列的列主数组很重要。

multidimensional-array rust row-major-order column-major-order

1
推荐指数
1
解决办法
1992
查看次数