Я пытаюсь создать RDD с использованием набора данных, но не могу найти способ сопоставить каждую строку набора данных.
Dataset<POJO> df1 = session.read().parquet(tableName).as(Encoders.bean(POJO.class));
Используя следующий подход
JavaRDD<List<Tuple3<Long, Integer, Double>>> tempDatas1 = df1.map(r -> new MapFunction<POJO, List<Tuple3<Long, Integer, Double>>>(){
//@Override
public List<Tuple3<Long, Integer, Double>> call(POJO row) throws Exception
{
// Get the sample property, remove leading and ending spaces and split it by comma
// to get each sample individually
List<Tuple2<String, Integer>> samples = zipWithIndex((row.getSamples().trim().split(",")));
// Gets the unique identifier for that s.
Long snp = row.getPos();
// Calculates the hamming distance.
return samples.stream().map(t -> {
String alleles = t._1();
Integer patient = t._2();
List<String> values = Arrays.asList(alleles.split("\\|"));
Double firstAllele = Double.parseDouble(values.get(0));
Double secondAllele = Double.parseDouble(values.get(1));
// Returns the initial S id, p id and the distance in form of Tuple.
return new Tuple3<>(snp, patient, firstAllele + secondAllele);
}).collect(Collectors.toList());
}
});
Получение cannot resolve method map(<lambda expression>)
ошибки на map
в df1.map(r ->
.