pyspark - 我通过使用它的 pyspark.ml.regression.LinearRegression 在 spark 中创建一个模型
问题描述
我正在构建模型但出现错误
from pyspark.ml.regression import LinearRegression
lr=LinearRegression(featuresCol = 'features', labelCol='label',maxIter=10)
lrModel=lr.fit(trainingdata)
IllegalArgumentException:要求失败:列特征必须是 struct,values:array> 类型,但实际上是 struct,values:array>。
解决方案
这将是这样的。假设您有一个名为 df 的数据框,其中的列是“X1”、“X2”、“Y”。
首先,您必须将自变量——“X1”、“X2”分组到一个名为“特征”的列中。下面是执行此操作的代码。
new_df = VectorAssembler(inputCols=["X1", "X2"], outputCol="features")
现在,您的 new_df 将包含列 - “X1”、“X2”、“功能”、“Y”。
现在,是时候运行线性回归了
model = LinearRegression(labelCol="Y").fit(training_data)
推荐阅读
- python - TypeError:字符串格式化期间并非所有参数都转换(数字计数)
- phoenix-framework - phx.gen.json 命令的 Elixir Phoenix 问题
- c# - 如何更改或配置 View razor cshtml 页面的目录
- python - 如何在 Python 中将正数转换为负数?
- python - 带有代理的 Python 异步请求
- c++ - 如何在 C++ 中实现分号结束输入?
- python - 将行的列表/值分配给列名
- javascript - 获取 TypeError:CreateListFromArrayLike 在反应中调用非对象
- kubernetes - Kubernetes pod 发生故障时执行一些操作
- android - Android Studio:从在浏览器中工作的 URL 获取 FileNotFoundException