package hex.createframe.columns; import hex.createframe.CreateFrameColumnMaker; import water.fvec.NewChunk; import water.fvec.Vec; import java.util.Random; /** * Random binary column. */ public class BinaryColumnCfcm extends CreateFrameColumnMaker { private String name; private double p; public BinaryColumnCfcm() { } public BinaryColumnCfcm(String colName, double ones_fraction) { name = colName; p = ones_fraction; } @Override public void exec(int nrows, NewChunk[] ncs, Random rng) { for (int row = 0; row < nrows; ++row) ncs[index].addNum(rng.nextFloat() <= p? 1 : 0); } @Override public String[] columnNames() { return new String[]{name}; } @Override public byte[] columnTypes() { return new byte[]{Vec.T_NUM}; } @Override public float byteSizePerRow() { return 0.125f; } }