基本上就是标题的问题。当我初次接触sklearn
库时,我觉得这点很奇怪。有什么解释吗?
回答:
据我所知,这是scikit-learn中机器学习模型fit
方法的设计选择。主要是为了保持输入形状规格的一致性:(n_samples, n_features)
:
X : {array-like, sparse matrix} of shape (n_samples, n_features) 训练向量,其中n_samples是样本数量, n_features是特征数量。
这一点在check_array
的顶部也非常明确,这是引发错误的验证步骤:
对数组、列表、稀疏矩阵或类似对象进行输入验证。默认情况下,输入被检查为一个非空的二维数组,仅包含有限值。如果数组的dtype是对象,则尝试转换为浮点数,转换失败时会引发错误。
不过,LinearRegression
实际上确实接受2D
目标数组,在这种情况下,它将执行多元线性回归。