ValueError: setting an array element with a sequence.处理

笔者在训练Lasso回归模型的时候,报了ValueError: setting an array element with a sequence. 网上说很多都是数据维度不匹配的问题,但都没说该如何处理,自己在这里为同样身为小白爱好者的你提供一个比较直接的思路:

STEP1:
直接打印出报错的代码,看看类型和数据维度
ValueError: setting an array element with a sequence.处理_第1张图片以此图为例,我们可以发现其实一个list类型,在列表里面还嵌套了一个array类型!这就是数据维度不一致的原因了,我们可以简单的理解为list列表里面不能有不一致的情况发生,要不就嵌套相同的成员数量,要不就不能有嵌套!

STEP2:
数据维度要保持一致,最简单的思路就是将里面嵌套的对象直接转化为一个新的列表记为List2,将不包括在嵌套列表里面的把List2提取后的列表记为List1,再将俩个列表通过extend()函数连接起来,就可以解决数据维度不一致的问题了!

List2=Result[3]#把上图的array对象提出出来,上图的结果记为Result
List1=Result[0:3]
List1.extend(List2)#数据顺序保持一样不变
print(List1)

打印出来结果,成功解决数据维度不一致的问题!

你可能感兴趣的:(机器学习,python,列表,tensorflow)