es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Sí, hay una manera de recuperar un vector Eigen de una matriz Eigen. Sin embargo, la sintaxis en el ejemplo dado es incorrecta. Para recuperar una fila o una columna de una matriz Eigen, debemos usar las funciones .row () o .col (), respectivamente. Además, debemos especificar el índice de la fila o columna que queremos extraer.

    Aquí hay un ejemplo de código que demuestra cómo recuperar un vector de columna de una matriz Eigen:

    “`c ++
    #include
    #include

    int main()
    {
    Eigen :: MatrixXd M (3,3);
    M <<1, 2, 3,
    4, 5, 6,
    7, 8, 9;

    Eigen :: VectorXd V = M.col (1);

    std :: cout << V << std :: endl;

    return 0;
    }


    En este código, primero creamos una matriz 3x3 `M` y le asignamos algunos valores. Luego, recuperamos la segunda columna de `M` usando la función `.col ()` y la almacenamos en un vector `V`. Finalmente, imprimimos el contenido de `V` en la consola. La salida de este código será:

    2
    5
    8
    “`

    Tenga en cuenta que utilizamos la clase .VectorXd para definir el vector V. Esto se debe a que sabemos que la columna que estamos recuperando será un vector de tamaño 3 (igual que el número de filas en M). Si quisiéramos extraer una fila de M, usaríamos la función .row () en su lugar y definiríamos el vector como Eigen :: RowVectorXd.

Comments are closed.