将生成的随机矩阵的索引存储在单独的矩阵中

玛尼莎·凯姆

我正在生成一个 9 * 9 矩阵的随机图 G:

G = round(rand(9));
G = triu(G) + triu(G,1)';
G = G - diag(diag(G))

我从上面的矩阵中随机提取一些行和列:

k = randperm(9);
mnew = G(k(1:4),k(2:6));

新 =

0     1     0     0     1
0     1     0     1     0
1     0     1     1     1
0     1     0     0     1

现在,我想创建一个矩阵来存储在 mnew 中提取的行和列的索引

the_raffa

由于mnew您已经提取了矩阵的元素,这些元素位于Gk(1:4)给出的行中,k(2:6)因此,如果我理解了您的问题,则必须生成由k(1:4)给出的可能对k(2:6)

定义:

k_r=k(1:4)
k_c=k(2:6)

您可以通过这种方式生成对():

row_idx=reshape(repmat(k_r,length(k_c),1),20,1)
col_idx=reshape(repmat(k_c,length(k_r),1)',20,1)
idx=[row_idx col_idx]

或者,简单地循环生成不同对的k_rk_c值:

idx=[];
for i=1:length(k_r)
   for j=1:length(k_c)
      idx=[idx;k_r(i) k_c(j)];
   end
end

例如,如果:

k_r=[1 8 9 7]

k_c=[8 9 7 6 5]

你得到:

idx=[1     8
     1     9
     1     7
     1     6
     1     5
     8     8
     8     9
     8     7
     8     6
     8     5
     9     8
     9     9
     9     7
     9     6
     9     5
     7     8
     7     9
     7     7
     7     6
     7     5];

其中第一列保存行索引,第二列保存列索引。

您可以reshape生成索引矩阵以更好地表示结果:

reshape_idx=reshape(idx',2,5,4)

这会生成以下(2x5x4)矩阵,其中每个 (:,:,i) 块表示 的每一行的行索引(第一行)和列索引(第二行)_ mnew

reshape_idx(:,:,1) =
     1     1     1     1     1
     8     9     7     6     5

reshape_idx(:,:,2) =
     8     8     8     8     8
     8     9     7     6     5

reshape_idx(:,:,3) =
     9     9     9     9     9
     8     9     7     6     5

reshape_idx(:,:,4) =
     7     7     7     7     7
     8     9     7     6     5

希望这可以帮助,

覆盖 '

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

R中随机生成的矩阵

来自分类Dev

将结果存储在矩阵中

来自分类Dev

将稀疏矩阵索引列表转换为R中的矩阵

来自分类Dev

如何基于随机索引数组将向量中的元素插入矩阵

来自分类Dev

将向量存储为矩阵中矩阵的(i,j)项

来自分类Dev

Matlab:将数组存储在矩阵中吗?

来自分类Dev

将像素坐标存储在矩阵中

来自分类Dev

将图像存储在int []矩阵中?

来自分类Dev

在Matlab中生成随机矩阵

来自分类Dev

Matlab生成多个随机矩阵

来自分类Dev

RAS算法生成随机矩阵

来自分类Dev

随机采样矩阵的项并返回R中的(行,列)索引。

来自分类Dev

将RDD生成矩阵

来自分类Dev

将RDD生成矩阵

来自分类Dev

Boost中的索引矩阵

来自分类Dev

TensorFlow中的索引矩阵

来自分类Dev

numpy中的矩阵索引

来自分类Dev

TensorFlow中的索引矩阵

来自分类Dev

使用Javascript中的随机x和y坐标生成矩阵

来自分类Dev

Matlab中随机生成的二进制矩阵的逆

来自分类Dev

用R中随机生成的变量创建矩阵

来自分类Dev

Fortran中的矩阵生成

来自分类Dev

Matlab:使用存储在其他矩阵中的索引访问矩阵元素

来自分类Dev

Matlab:使用存储在其他矩阵中的索引访问矩阵元素

来自分类Dev

使用存储在另一个矩阵中的索引访问数据矩阵

来自分类Dev

大量矩阵的随机矩阵

来自分类Dev

如何从该矩阵生成的列表中获取矩阵中元素的索引?

来自分类Dev

带有随机采样列的索引矩阵

来自分类Dev

随机替换矩阵中的元素