我正在尝试在保持索引的情况下绘制训练测试分割,以下是我的代码。
#df.insert(0, 'x', range(0, 0 + len(df)))X_train, X_test, y_train, y_test = train_test_split(x, y, test_size = .1)regressor = RandomForestClassifier()regressor.fit(X_train, y_train)y_pred = regressor.predict(X_test)plt.plot(X_train,y_pred_train,'bo')plt.show()
看起来y_pred似乎是与错误的x轴值绘制的,因为数据中间有一个巨大的间隙,并且有些重叠。
如何使y_pred和y_pred_train的对应x_value保持在数据框中的原始位置?
回答:
你需要在绘图中包含索引。通常y值会以每个点的颜色表示。以下是如何操作的示例:
plt.scatter(X_test.index,X_test.values,c=y_predict_test)plt.show()
黄色点属于类0,紫色点属于类1