Eigen library --> initialize matrix with data from file or existing std::vector content (c++)

前端 未结 7 1168
你的背包
你的背包 2020-12-25 08:00

My question is how to initialize an eigen Matrix, but NOT this way:

matrix << 1,0,1,0,
          1,0,1,0,
          1,0,1,0,
         


        
7条回答
  •  一向
    一向 (楼主)
    2020-12-25 08:39

    I used element-wise initialization (assuming we know nrows and ncols):

    MatrixXf X = MatrixXf::Zero(nrows,ncols);
    ifstream fin ("./data.txt");
    
    if (fin.is_open())
    {
        for (int row = 0; row < nrows; row++)
            for (int col = 0; col < ncols; col++)
            {
                float item = 0.0;
                fin >> item;
                X(row, col) = item;
            }
        fin.close();
    }
    cout << "X = " << endl << X << endl;
    

提交回复
热议问题