A.D*_*mas 1 java machine-learning apache-spark spark-dataframe apache-spark-mllib
我想读入两个带有数据的文本文件,并对我的Java Spark项目中的数据运行一些机器学习分类
设fileZero 和fileOne为包含以下格式数据的两个文件
>fileZero
10 1
9.8 1.2
10.1 0.9
....
Run Code Online (Sandbox Code Playgroud)
和其他文件
>fileOne
0.1 40
0.2 38
0 50
...
Run Code Online (Sandbox Code Playgroud)
对于fileZero和fileOne每行包含一个(x,y)元组,用空格隔开,分别标记为0和1。换句话说,fileZero应该将其中的所有行标记为0并标记为fileOne1。
我想阅读两个文件,并正在考虑使用该对象Dataset。如何读取两个文件,以后可以对数据进行分类/逻辑回归?
您可以定义pojo对象并将文件读入对象。
我的对象
public class MyObject {
private double x;
private double y;
private double label;
//Getters and setters
...
}
Run Code Online (Sandbox Code Playgroud)
您可以像这样读取文件并将其转换为数据集:
JavaRDD<MyObject> cRDD = spark.read().textFile("C:/Temp/File0.csv").javaRDD()
.map(new Function<String, MyObject>() {
@Override
public MyObject call(String line) throws Exception {
String[] parts = line.split(" ");
MyObject c = new MyObject();
c.setX(parts[0].trim());
c.setY(parts[1].trim());
c.setLabel(0);
return c;
}
});
Dataset<Row> mainDataset = spark.createDataFrame(cRDD, MyObject.class);
Run Code Online (Sandbox Code Playgroud)
然后您可以使用分类方法...
| 归档时间: |
|
| 查看次数: |
6256 次 |
| 最近记录: |