如何在犰狳中使用var/variance函数
How to use var/variance function in armadillo
我应该如何在犰狳中使用 var() 函数?
我有一个矩阵,其中行为 variables/features,列为 observations/instances。
我要获取每一行的方差,这样我就可以确定方差最大的 variables/features。
目前我正在打电话:
auto variances = arma::var(data, 0, 1);
其中 data
是我的矩阵。
据我目前所知,我得到了一个矩阵?文档表明这是正确的。我期望为我的每个矩阵行取回一个具有方差分数的向量。
我可以遍历我的行并单独获取每行的方差,如下所示:
for (auto i = 0; i < data.n_rows; ++i)
auto rowVariance = arma::var(dataSet.data.row(i));
但我不想这样做。
我想取回一个向量,其中包含矩阵中每一行的方差值,然后对该向量使用 arma::sort_index() 以获得与排序方差对应的一组排序索引。
提前致谢。
原来错误是因为我正在使用 arma::var variances = arma::var(data, 0, 1)
并且应该一直使用 arma::Col<T> variances = arma::var(data, 0, 1)
因为我的数据矩阵是 arma::Mat<T>
类型因为我允许 float 和仅双点精度。
上面来自 vagoberto 的评论让我走上了正确的轨道。
我应该如何在犰狳中使用 var() 函数?
我有一个矩阵,其中行为 variables/features,列为 observations/instances。
我要获取每一行的方差,这样我就可以确定方差最大的 variables/features。
目前我正在打电话:
auto variances = arma::var(data, 0, 1);
其中 data
是我的矩阵。
据我目前所知,我得到了一个矩阵?文档表明这是正确的。我期望为我的每个矩阵行取回一个具有方差分数的向量。
我可以遍历我的行并单独获取每行的方差,如下所示:
for (auto i = 0; i < data.n_rows; ++i)
auto rowVariance = arma::var(dataSet.data.row(i));
但我不想这样做。
我想取回一个向量,其中包含矩阵中每一行的方差值,然后对该向量使用 arma::sort_index() 以获得与排序方差对应的一组排序索引。
提前致谢。
原来错误是因为我正在使用 arma::var variances = arma::var(data, 0, 1)
并且应该一直使用 arma::Col<T> variances = arma::var(data, 0, 1)
因为我的数据矩阵是 arma::Mat<T>
类型因为我允许 float 和仅双点精度。
上面来自 vagoberto 的评论让我走上了正确的轨道。