我是机器学习的新手,正在尝试使用scikit-learn在Python中设置用于预测目的的逻辑回归。我已经用一个小的模拟数据集设置了一个,但是当将此代码扩展到更大的数据集时,我遇到了一个关于ValueError的问题。下面是我的代码:
inputData = np.genfromtxt(file, skip_header=1, unpack=True)
print "X array shape: ",inputData.shape
inputAnswers = np.genfromtxt(file2, skip_header=1, unpack=True)
print "Y array shape: ",inputAnswers.shape
logreg = LogisticRegression(penalty='l2',C=2.0)
logreg.fit(inputData, inputAnswers)
inputData 2D数组(矩阵)有149行231列。我试图将其适合inputAnswers数组,该数组有149行,正确对应于inputData数组的149行。但是,下面是我收到的输出:
X array shape: (231, 149)
Y array shape: (149,)
Traceback (most recent call last):
File "LogRegTry_rawData.py", line 26, in <module>
logreg.fit(inputData, inputAnswers)
File "[path]", line 676, in fit
(X.shape[0], y.shape[0]))
ValueError: X and y have incompatible shapes.
X has 231 samples, but y has 149.
我明白错误的意思,但我不确定为什么它会出现在这种情况下,以及如何修复它。非常感谢任何帮助。谢谢你!
形状中,第一个元素是行数,第二个元素是列数。所以你有231个元素,只有149个标签。尝试转换您的数据:inputData。T