gpt4 book ai didi

java - 如何将 JavaRDD 转换为 JavaRDD>?

转载 作者:行者123 更新时间:2023-11-30 02:40:46 25 4
gpt4 key购买 nike

JavaRDD<List<String>> documents = StopWordsRemover.Execute(lemmatizedTwits).toJavaRDD().map(new Function<Row, List<String>>() {
@Override
public List<String> call(Row row) throws Exception {
List<String> document = new LinkedList<String>();
for(int i = 0; i<row.length(); i++){
document.add(row.get(i).toString());
}
return document;
}
});

我尝试使用此代码来实现它,但我得到了 WrappedArray

[[WrappedArray(happy, holiday, beth, hope, wonderful, christmas, wish, best)], [WrappedArray(light, shin, meeeeeeeee, like, diamond)]]

如何正确制作?

最佳答案

您可以使用getList方法:

Dataset<Row> lemmas = StopWordsRemover.Execute(lemmatizedTwits).select("lemmas");
JavaRDD<List<String>> documents = lemmas.toJavaRDD().map(row -> row.getList(0));

其中 lemmas 是包含词形还原文本的列的名称。如果只有一列(看起来就是这种情况),您可以跳过select。如果您知道列的索引,您也可以跳过 select 并将索引传递给 getList 但这很容易出错。

您当前的代码迭代的是Row,而不是您尝试提取的字段。

关于java - 如何将 JavaRDD<Row> 转换为 JavaRDD<List<String>>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41785737/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com