我想从给定一组下标的文件中获取当前加载数据的 C++ 程序中的k
随机下标。A
我有一个双值矩阵和一个MxN
整数从 0 到 20的矩阵。A
Mx1
B
我怎样才能从条件中获取k
随机下标?例如,给定:A
B
A = [ 0.25 0.25 0.25 0.25
0.18 0.18 0.18 0.18
0.36 0.36 0.36 0.36
0.51 0.51 0.51 0.51 ]
B = [ 0
1
2
1 ]
我正在尝试从if获取k = 1
随机行下标。所以,我正在寻找or 。i
A
B(i) == 1
i == 1
i == 4
我尝试首先创建一个逻辑索引:
idx = B == 1;
然后,从A
具有该条件的元素中获取如下:
r = A( idx, : );
最后,对r
to 进行排列以获得k
行:
randperm( size(r) )
但我现在卡住了,因为我不知道如何将排列转换为矩阵A
。
我也试图理解这个函数[I,J] = ind2sub(siz,IND)
,但现在不知道如何将下标与随机排列结合起来。此外, 的结果randperm( size(r) )
与 的大小有关r
。
那么,我怎样才能从条件中获取k
随机下标?这个想法是使用 C++ 程序中的下标作为输入参数A
B