Xtensor return 值为 NaN 的指标

Xtensor return indicies where value is NaN

假设我有一个张量:

xt::xtensor_fixed<float, xt::xshape<1, 4>, xt::layout_type::column_major> withnans =
 { {3, std::numeric_limits<double>::quiet_NaN(), 4, std::numeric_limits<double>::quiet_NaN()} };

即{{3,南,4,南}}

我想 return 有 nan 的位置(索引)。

{1, 3}

我如何在 xtensor 中执行此操作?

没关系。

xt::xtensor_fixed<float, xt::xshape<1, 4>, xt::layout_type::column_major> withnans =
 { {3, std::numeric_limits<double>::quiet_NaN(), 4, std::numeric_limits<double>::quiet_NaN()} };

std::cout << xt::flatten_indices(xt::argwhere(xt::isnan(xt::flatten(withnans)))) << std::endl;

{3}