我有以下数据:
A = [1 2 ; 3 2; 4 7; 10 2; 6 7; 10 9]
B = [1 2 3; 4 4 9; 1 8 0; 3 7 9; 3 6 8]
C = [4; 10; 6; 3; 1]
A =
1 2
3 2
4 7
10 2
6 7
10 9
B =
1 2 3
4 4 9
1 8 0
3 7 9
3 6 8
C.' =
4 10 6 3 1
对于 I 中的每个唯一值,A(:,2)
我需要在 中获取相应的值,在A(:,1)
中查找它们的值C
,然后在 中获取相关行B
并计算它们的平均值。结果应该是length(unique(A(:,2))
x size(B,2)
;
此示例的预期结果:
- 值“2”:第 2、4 和 5 行的平均值
B
说明:对应于值“2”的索引 1、3 和 10A
位于索引 2、4、5 in 处C
。
相应地:
- 值“7”:第 1 行和第 3 行的平均值
B
。 - 值“9”:第 2 行的平均值
B
。
我现在通过应用和迭代每个值,搜索正确的索引unique
来计算它。A
我的数据集很大,所以需要很长时间。我怎样才能避免循环?