4

任意の float 値を持つ VectorXf exampleVector があり、その値に従っていくつかの要素を選択したいとします。

boolArray=exampleVector<1; などの基準に従って、真/偽の値の論理ベクトルを効率的に取得できます。

しかし今、基準を満たす要素のみを含む (より小さな次元の) 新しいベクトルを作成したいと考えています。

eigen3でこれを効率的に行うにはどうすればよいですか?

RI では、reducedVector=exampleVector[boolArray] を使用できます

前もって感謝します

4

1 に答える 1

0

VectorXf はその値を連続したメモリ範囲に格納するため、必要な値をコピーする必要があります。Rも同じように行うと確信しているので、効率が低下することはありません。ただし、R のように便利な方法を私が知っている方法はありません。そのため、ループして関連する値をコピーする必要があります。

于 2012-12-19T08:13:39.173 に答える