Python 随机森林回归可视化:解决X, y维度不一致问题
Python 随机森林回归可视化:解决X, y维度不一致问题
在使用Python的matplotlib库绘制随机森林回归模型的可视化结果时,可能会遇到X和y维度不一致的问题。例如,如果X是一个二维矩阵,而y是一个一维向量,则会导致绘图错误。
解决方法: 可以将y的维度改为与x相同的维度,即将y改为y.reshape(-1,1)。
代码示例:
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.colors import LinearSegmentedColormap
%matplotlib notebook
plt.rcParams['font.sans-serif'] = ['PingFang HK'] # 选择一个本地的支持中文的字体
fig, ax = plt.subplots()
ax.set_facecolor('#f8f9fa')
x_min, x_max = X[:, 0].min() - .5, X[:, 0].max() + .5
xx = np.arange(x_min, x_max, .05)
yy = rf.predict(np.c_[xx.ravel(), np.zeros(len(xx))])
plt.scatter(X, y.reshape(-1,1), c='#e63946', marker='o', s=20) # 修改此行
plt.plot(xx, yy)
ax.set_title('随机森林回归', color='#264653')
ax.set_xlabel('X', color='#264653')
ax.set_ylabel('Y', color='#264653')
ax.tick_params(labelcolor='#264653')
plt.show()
解释:
y.reshape(-1,1)将y转换为一个二维矩阵,其中第一列包含原始数据,第二列为0。这确保了X和y具有相同的维度,从而可以正确地绘制散点图。
通过以上修改,可以解决X和y维度不一致的问题,并成功绘制随机森林回归模型的可视化结果。
原文地址: https://www.cveoy.top/t/topic/oQdg 著作权归作者所有。请勿转载和采集!