如何在Spark中读取多个文本文件进行文档聚类?

我想从一个目录中读取多个文本文档来进行文档聚类。为此,我希望按以下方式读取数据:

SparkConf sparkConf = new SparkConf().setAppName(appName).setMaster("local[*]").set("spark.executor.memory", "2g");JavaSparkContext context = new JavaSparkContext(sparkConf);SparkSession spark = SparkSession.builder().config(sparkConf).getOrCreate();Dataset<Row> dataset = spark.read().textFile("path to directory");

在这里,我不想使用
JavaPairRDD data = context.wholeTextFiles(path); 因为我希望返回类型是Dataset。


回答:

在Scala中,你可以这样写:

context.wholeTextFiles("...").toDS()

在Java中,你需要使用一个编码器。请查看Java文档以获取更多详情

JavaPairRDD<String, String> rdd = context.wholeTextFiles("hdfs:///tmp/test_read");Encoder<Tuple2<String, String>> encoder = Encoders.tuple(Encoders.STRING(), Encoders.STRING());spark.createDataset(rdd.rdd(), encoder).show();

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注