ojAlgo上是否有一种方法可以将矩阵归一化?

时间:2019-03-29 07:09:58

标签: normalization sklearn-pandas ojalgo

我很想知道是否有一种方法可以使用ojAlgo矩阵库为MatrixStore查找规范化形式。

也许一次在MatrixStore上执行的例程或任务将导致每一行的平均值为0,标准差为1。

如果熟悉sklearn,我正在寻找的是ojAlgo上的某些功能,其功能类似于sklearn上的预处理模块。

1 个答案:

答案 0 :(得分:1)

不直接。您必须自己编写一些循环和计算。这是一种可行的方法:

PrimitiveDenseStore matrix = ...;

SampleSet sampleSet = SampleSet.make();
for (int j = 0; j < matrix.countColumns(); j++) {
    sampleSet.swap(matrix.sliceColumn(j));
    for (int i = 0; i < matrix.countRows(); i++) {
        matrix.set(i, j, sampleSet.getStandardScore(i));
    }
}

我强烈建议您使用ojAlgo在列中组织数据。

我实际上没有测试该代码。可能会出现像这样就地更新矩阵的问题。

...

使用v47.1.1(刚刚发布),现在可以通过以下方式进行操作:

matrix.modifyAny(DataPreprocessors.STANDARD_SCORE);