Das sollte hoffentlich ziemlich einfach sein, aber ich kann keinen Weg finden, es in der Eigen-Dokumentation zu tun.
Angenommen, ich habe einen 2D Vektor, zB
std::vector<std::vector<double> > data
Angenommen, es ist mit 10 x 4
data set gefüllt.
Wie kann ich diese Daten verwenden, um ein Eigen::MatrixXd mat
auszufüllen?
Der naheliegendste Weg ist die Verwendung einer for-Schleife wie folgt:
%Vor%Aber es sollte einen besseren Weg geben, der Eigen ist?
Sicher. Sie können die gesamte Matrix nicht gleichzeitig ausführen, da vector<vector>
einzelne Zeilen im zusammenhängenden Speicher speichert, aber aufeinanderfolgende Zeilen möglicherweise nicht zusammenhängend sind. Sie müssen jedoch nicht alle Elemente einer Zeile zuweisen: