我正在进行二元分类,预测值为0和1,有没有办法获取预测值对应的特征值。
例如:我有两个特征’Age’和’Salary’,目标值是’purchased’。Age Salary Purchased19 19000 035 20000 027 30000 141 29000 165 40000 1
所以,我想知道对于每个测试案例的结果(0或1),对应的特征值(Age和Salary)是什么。
import pandas as pddf = pd.read_csv('data.csv')x = df.iloc[:,[0,1]]y = df.iloc[:,2]from sklearn.cross_validation import train_test_splitx_train,x_test,y_train,y_test =train_test_split(x,y,test_size=0.25,random_state=0)from sklearn.linear_model import LogisticRegressionregressor = LogisticRegression()regressor.fit(x_train,y_train)y_pred=regressor.predict(x_test)
回答:
根据您的澄清,您只是想将它们放入同一个数据结构中。您可以使用pandas连接两个数据框。但您需要将预测值放入一个具有适当索引的数据框中。这是代码:
y_pred_df = pd.DataFrame(y_pred, index=x_test.index)pd.concat([x_test, y_pred_df], axis=1)