我正在使用线性回归模型预测特定值。但是,我要预测的实际列不是“在轴上找到”
我将预测值更改为随机列,并且工作正常。但这不是我要关注的专栏。
这是Excel文件的格式。
X1 X2 X3 X4 X5 X6 X7 X8 Y1 Y2
0 0.98 514.5 294.0 110.25 7.0 2 0.0 0 15.55 21.33
1 0.98 514.5 294.0 110.25 7.0 3 0.0 0 15.55 21.33
2 0.98 514.5 294.0 110.25 7.0 4 0.0 0 15.55 21.33
3 0.98 514.5 294.0 110.25 7.0 5 0.0 0 15.55 21.33
4 0.90 563.5 318.5 122.50 7.0 2 0.0 0 20.84 28.28
data = pd.read_excel("ENB2012_data.xlsx")
print(data.head())
data = data[["X1", "X2", "X3", "X4", "X5", "X6", "X7", "X8"]]
predict = "Y1"
X = np.array(data.drop([predict], 1)) #the error lies on this line.
Y = np.array(data[predict])
我希望输出显示Y1列的预测值
Error message: KeyError: "['Y1'] not found in axis"
答案 0 :(得分:0)
执行此操作时:
data = data[["X1", "X2", "X3", "X4", "X5", "X6", "X7", "X8"]]
您从数据中删除了“ Y1”列。这样,您的数据就不再有“ Y1”。 尝试这样做:
data = pd.read_excel("ENB2012_data.xlsx")
print(data.head())
data = data[["X1", "X2", "X3", "X4", "X5", "X6", "X7", "X8", "Y1"]]
predict = "Y1"
Y = np.array(data[predict])
X = np.array(data.drop([predict], 1))