gpt4 book ai didi

matrix - 使用向量作为列索引到矩阵的行中,在 Octave 中

转载 作者:行者123 更新时间:2023-12-04 14:12:45 24 4
gpt4 key购买 nike

假设我有一个矩阵 A 和一个向量 B。是否可以使用向量 B 中的值作为索引来从矩阵 A 的每一行中选择一个值?例子:

A = [1, 2, 3;
4, 5, 6;
7, 8, 9;]

B = [1;3;1]

C = A(B) or C = A(:,B)

giving:

C = [1; 6; 7]

当然,我可以用 for 循环来做到这一点,但对于更大的矩阵,它需要一段时间。我还想使用它以以下方式制作逻辑矩阵:
A = zeros(3,3)

B = [1;3;1]

A(B) = 1

A = [1, 0, 0;
0, 0, 1;
1, 0, 0]

感谢您给我的任何建议。

最佳答案

您需要为此创建线性索引。按照你的例子:

octave-3.8.2> a = [1  2  3
4 5 6
7 8 9];
octave-3.8.2> b = [1 3 1];
octave-3.8.2> ind = sub2ind (size (a), 1:rows (a), b);
octave-3.8.2> c = a(ind)
c =

1 6 7

关于matrix - 使用向量作为列索引到矩阵的行中,在 Octave 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25370356/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com