0

我写了一个 Miss Class 来扩展 MRTask 以检查 H2oFrame 中的缺失值。这就是我所做的

package org.apache.spark.h2o.utils

import water.fvec.{NewChunk, Frame, Chunk}
import water._

class Miss extends MRTask[Log] {
  override def map(c: Chunk, nc: NewChunk): Unit = {
    for (row <- 0 until c.len()) {
      if(c.atd(row).isNaN){
        nc.addNum(0)
      }
      else 
      nc.addNum(1)
    }
  }
}

如您所见,当一行为 NaN 时,我们可以在新列中得到 0。如果我想使用 0 以外的数字来标记缺失值,我必须更改我的代码才能做到这一点。我可以在 Miss Class 中添加一个新参数 X 吗?当我打电话给这门课时,我可以写一些类似的东西

H2OFrame.add(new Miss(8).doAll(1, pred.vec(0)).outputFrame(Array("Miss"), null))

非常感谢你的帮助!

4

0 回答 0