0

如何为 LabeledPointData 设置编码器,它是 Double、Vectors of Double 的组合。如何设置编码器以创建 DataFrame?

public static Dataset<LabeledPoint> convertRDDStringToLabeledPoint(Dataset<String> data,String delimiter) {
    Dataset<LabeledPoint> labeledPointData = data.map(
            (data1)->{
                String splitter[] = data1.split(delimiter);
                double[] arr = new double[splitter.length - 1];
                IntStream.range(0,arr.length).forEach(i->arr[i]=Double.parseDouble(splitter[i+1]));
                return new LabeledPoint(Double.parseDouble(splitter[0]), Vectors.dense(arr));
            },Encoders.???);
    return labeledPointData;
}
4

1 回答 1

1

LabeledPoint是 Scala 中的一个案例类,所以我认为它是Encoders.product[LabeledPoint].

(我不知道如何用Java编写它)

于 2017-05-29T10:45:11.280 回答