首先,我进行了数据预处理,以将数据用作X来将数据转换为稀疏矩阵,而Y是标签列表。然后我应用了机器学习
X_train_kera, X_test_kera, y_train_kera, y_test_kera = train_test_split(disc_vec_tfidf, y_keras, test_size=0.5)
from sklearn.linear_model import LinearRegression
cls = LinearRegression()
cls.fit(X_train_kera,y_train_kera)
然后我尝试绘制线性回归图
plt.scatter(X_train_kera[:,0],y_test_kera,color='black')
plt.plot(X_train_kera[:,0], y_pred, color='blue')
plt.xticks(())
plt.yticks(())
plt.show()
这给了我错误,说x和y的大小必须相同。然后,我进行了一次谷歌搜索,发现X_train_keras的形状不同于y_test_keras。我尝试使用[:,0],但仍然无法正常工作,有人可以帮我吗?
X_train_kera.shape
(17330, 2746))
y_test_kera.shape
(17331,)
答案 0 :(得分:0)
您的形状输出说明了这一点。 您的X_train有17330行 因此,如果您拉出第一列和所有行,即X_train_kera [:,0] 您有17330行和一列。 您的y_test_kera.shape为17331,这说明了尺寸不匹配的原因