@Cristian馬丁內斯:
在磚,你需要從pyspark.sql導入必要的類。類型模塊,以便在您的代碼中使用它們。解決你遇到的NameError與標簽”的名字“倍增式”沒有定義”在練習2.0中,您可以添加以下行一開始你的筆記本:
從pyspark.sql。類型進口倍增式
這將導入倍增式類在代碼中使用。然後您可以在您的代碼中使用它是這樣的:
從pyspark.sql。從pyspark.ml進口倍增式類型。從pyspark.ml進口VectorAssembler特性。回歸從pyspark.ml進口LinearRegression。評估導入RegressionEvaluator #定義的模式輸入數據模式= StructType ([StructField (x1,倍增式(),真的),StructField (“x2”,倍增式(),真的),StructField (x3,倍增式(),真的),StructField (“y”,倍增式(),真的)])#負載輸入數據從CSV文件數據= spark.read.csv (“dbfs: / /你/數據/路徑。csv”,標題= True,模式=)#創建一個VectorAssembler結合輸入列成一個單一的功能列彙編= VectorAssembler (inputCols = (x1, x2”、“x3”], outputCol =“特性”)#變換輸入數據使用VectorAssembler數據= assembler.transform(數據)#將輸入數據分為訓練集和測試集,測試= data.randomSplit([0.7, 0.3]) #火車上的線性回歸模型訓練數據lr = LinearRegression (featuresCol =“特性”,labelCol = " y ")模型= lr.fit(火車)#評估模型對測試數據評估者= RegressionEvaluator (labelCol = " y " predictionCol =“預測”,metricName =“rmse”) rmse = evaluator.evaluate (model.transform(測試))打印(“rmse測試數據:% g”% rmse)
注意,應該取代“dbfs: / /你/數據/路徑。csv”輸入數據文件的實際路徑。