【发布时间】:2021-06-06 07:27:40
【问题描述】:
我一直在尝试构建一个数据框,其中有一列包含来自模型的预测值,但没有成功。
为了一个简单的例子,我将使用 iris 数据集:
import numpy as np
import pandas as pd
from sklearn.datasets import load_iris
iris = load_iris()
df = pd.DataFrame(np.concatenate((iris.data, np.array([iris.target]).T), axis=1), columns=iris.feature_names + ['target'])
df.head()
这将输出:
对于构建模型的后续步骤,我将拥有
# Get the x and y for the experiment
X = df.drop('target', 1).values
y = df["target"].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.25, random_state=1)
#Create an XGB classifier and instance of the same
from xgboost import XGBClassifier
clf = XGBClassifier()
clf.fit(X_train, y_train)
y_pred = clf.predict(X_test)
此时我被阻止了。我查看了一些关于如何检索单个数据点的索引/ID(每行都是一个数据点)的帖子,但没有成功。
无论如何,我可以将预测与每一行相匹配吗?或者作为替代方案,测试各个行以便我知道它们的预测结果?
【问题讨论】:
标签: python-3.x pandas dataframe scikit-learn xgboost