如何在 python 随机森林模型中删除可预测值 (y)
how to drop predictable value (y) in python random forest model
我运行一个随机森林模型在python中看到特征的重要性。然而,可预测值 (y) 不能被删除,它看起来像作为占据 98% 以上重要性的参数之一。
代码如下:
temp=pd.read_csv('temp_data.csv',sep=',',engine='python')
temp['y'] = temp['temp_actual']
y = temp['y'].values
temp = temp.drop(['y'],axis=1)
#X = temp.loc[:,:]
x= temp.values
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(x, y, test_size=0.3, random_state=42)
请帮助更正编码。谢谢!
在您的代码中,您使用代码
将目标特征复制到列 y
temp['y'] = temp['temp_actual']
然后您将 y
设置为该列中的值
y = temp['y'].values
然后您使用以下代码从数据框中删除了列 y
temp = temp.drop(['y'],axis=1)
现在,如果您查看数据框 temp
的列,您会发现 y
不存在,但 temp_actual
存在。
您必须从数据框中删除该列,为此您可以执行以下任一方法。
del temp['temp_actual']
或
temp = temp.drop(['temp_actual'], axis=1)
我运行一个随机森林模型在python中看到特征的重要性。然而,可预测值 (y) 不能被删除,它看起来像作为占据 98% 以上重要性的参数之一。
代码如下:
temp=pd.read_csv('temp_data.csv',sep=',',engine='python')
temp['y'] = temp['temp_actual']
y = temp['y'].values
temp = temp.drop(['y'],axis=1)
#X = temp.loc[:,:]
x= temp.values
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(x, y, test_size=0.3, random_state=42)
请帮助更正编码。谢谢!
在您的代码中,您使用代码
将目标特征复制到列y
temp['y'] = temp['temp_actual']
然后您将 y
设置为该列中的值
y = temp['y'].values
然后您使用以下代码从数据框中删除了列 y
temp = temp.drop(['y'],axis=1)
现在,如果您查看数据框 temp
的列,您会发现 y
不存在,但 temp_actual
存在。
您必须从数据框中删除该列,为此您可以执行以下任一方法。
del temp['temp_actual']
或
temp = temp.drop(['temp_actual'], axis=1)