在spark2.0之前,逻辑回归只能做二分类的。之后加上了多分类。
根据我的理解,逻辑回归既可以用来分类,也可以用来回归,但是官网并没有给出logistic regression回归的例子,只有线性回归(linear regression)的例子
此外,官网给出了逻辑回归二分类和多分类的例子,但是多分类中的setFamlily方法无法在spark1.6和spark2.0的版本上运行,无论是用IDEA还是spark-shell。
这里给出完整的逻辑回归二分类代码,数据创建方式有两种:手动代码输入和从文件读取。
代码如下:
/**
* Created by wangtuntun on 17-3-7.
* 将数据代入模型进行预测
* 本来想用logistic regression做回归的,结果点开的是官网的classification下的代码
* 而且还是只支持二分类的代码
*/
import org.apache.spark.{SparkContext, SparkConf}
import org.apache.spark.ml.classification.LogisticRegression
import org.apache.spark.ml.param.ParamMap
import org.apache.spark.mllib.linalg.{Vector, Vectors}
import org.apache.spark.sql.Row
import org.apache.spark.sql.SQLContext
object predict_with_logistic_regression_classification {
def main(args: Array[String]): Unit = {
// Prepare training data from a