利用 PySpark 进行决策树分类器的机器学习基础
1. PySpark 中的机器学习包
PySpark 的机器学习功能集中在 ml
包中,该包包含多个模块,对核心机器学习功能进行了分类:
- pyspark.ml.feature
:用于特征转换和创建。
- pyspark.ml.classification
:判断数据点所属类别的算法。
- pyspark.ml.tuning
:改进机器学习模型的算法。
- pyspark.ml.evaluation
:评估机器学习模型的算法。
- pyspark.ml.util
:保存和加载机器学习模型的方法。
与之前使用的 RDD 不同,PySpark 的机器学习功能要求数据以 DataFrame 对象的形式存在。RDD 是 Spark 核心的抽象并行数据结构,而 DataFrame 是构建在 RDD 之上的一层,提供了行和列的概念,类似于 SQL 数据库的表格存储和检索方式。
2. 将数据导入 DataFrame
在机器学习过程中,第一步是准备好用于分析的数据,可能包括变量格式转换和数据清理等预处理操作。在这个例子中,数据已经是干净的。
对于 RDD,Spark 提供了 .textFile
方法来读取和处理文本数据。对于 DataFrame,也有多种便捷的选择:
- 如果数据已经在 RDD 中,可以直接在 RDD 上调用