Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 使用LinearRegression时发生断言错误_Python 2.7_Apache Spark_Pyspark_Linear Regression - Fatal编程技术网

Python 2.7 使用LinearRegression时发生断言错误

Python 2.7 使用LinearRegression时发生断言错误,python-2.7,apache-spark,pyspark,linear-regression,Python 2.7,Apache Spark,Pyspark,Linear Regression,我试图帮助一位朋友,他试图在信号中使用线性回归。数据包含20000条记录和两列(时间和脉冲),我正在Databricks的社区中运行它。我的方法非常简单而且有偏见,我知道,我试图添加更多的人工功能,为此我创建了这个简单但有用的函数 def featuresCreator(x, grad, acc): if (grad > 0): return [x ** grad] else: return [x ** grad] + featuresCreator(x, grad

我试图帮助一位朋友,他试图在信号中使用
线性回归。数据包含20000条记录和两列(时间和脉冲),我正在Databricks的社区中运行它。我的方法非常简单而且有偏见,我知道,我试图添加更多的人工功能,为此我创建了这个简单但有用的函数

def featuresCreator(x, grad, acc):
  if (grad > 0):
    return [x ** grad]
  else:
    return [x ** grad] + featuresCreator(x, grad - acc, acc)

featuresUDF = udf(lambda x, grad, acc: DenseVector(featuresCreator(x, grad, acc)), VectorUDT())
我认为在一定的值范围内多次启用该功能将有助于过度拟合回归,这就是我运行此功能的原因

xf = df.select(featuresUDF(col("tiempo"), lit(12), lit(0.1)).alias("features"), col(" pulso").alias("label"))
一切都很好,
DataFrame
只有两列,一列是特性,另一列是标签。当我尝试对数据使用
LinearRegression
时,问题就出现了

lr = LinearRegression().setFeaturesCol("features").setLabelCol("label").setMaxIter(200)
lrm = lr.fit(xf)
在这里,程序分解并显示以下异常

java.lang.AssertionError:断言失败:lapack.dppsv返回5


有什么办法解决这个问题吗?还是我做错了什么?

这个错误通常意味着你传递了一个不可解的矩阵

所以实际上它和向量的长度无关

检查信息代码:netlib.org/lapack/explore-html/d3/d62/dppsv_8f.html:A的i阶前导小调不是正定的,因此无法完成因式分解,也没有计算出解


这个问题可以使用线性回归的解算器参数来解决

val lf=new LinearRegression().setSolver("l-bfgs")

默认情况下,这是正常的。

此错误通常意味着您传递了一个不可解的矩阵。因此,它与向量的长度无关?否。检查信息代码::a的i阶的前导-次方不是正定的,因此无法完成因式分解,而解决方案还没有找到computed@zero323我认为这是你的评论创造了一个有效的答案@我应该结束这个问题吗?我想这些信息可能对其他人有所帮助。你怎么认为?