应用场景:Python sklearn LinearRegression方法进行模型训练(可回归,可聚类)
常出现问题:
例外:数据必须是一维的
ValueError:期望的2D数组,天辰软件下载得到的是1D数组
使用数组重塑数据。如果您的数据具有单个特性或数组,天辰平台挂机软件下载请重新定义(- 1,1)。如果它包含单个样本,则重塑(1,-1)。
核心:在采用sklearn包进行回归或者聚类分析时,默认训练的样本格式为二维数据,即样本数量和训练特征的二维向量。(这一点不同于其他的线性回归,输入数据是一维向量)
解决方法;
根据提示,采用numpy中的改造方法进行维度调整,如果是只有一个维度特征而含有多个样本,则有y = np。重塑(x,(1,1)),如果是一个样本含有多个特征,则有y = np。重塑(x,(1,1)), 1代表的是一维。具体步骤是:
“‘
x = np.arange (5)
x
数组([0,1,2,3,4])
np.shape (x)
(5)
y = np。重塑(x, (1,1))
y
数组([[0],
[1],
[2],
[3],
[4]])
np.shape (y)
(5、1)
“‘
另外一种方法是采用numpy中的newaxis进行维度增加,该方法可以增加多个维度,具体应用方法是y = x (:, np。newaxis]即可得到维度为(5、1)的输入样本
网友回应