首页 > 解决方案 > 如何将原始索引保留在预测函数的numpy数组输出中

问题描述

我已经训练了一个 xgb 模型并在测试数据集上调用了一个预测函数

xg_reg.fit(X_train, y_train)

preds = xg_reg.predict(X_test)

但是,结果preds变量是一个numpy数组,其中索引重置为0-101

由于我y_test是一个带有随机索引的 pandas 数据帧,因此train_test_split from (sklearn.model_selection)我实际上无法将结果预测值映射或附加到测试数据帧。

有没有办法在预测数组中保留原始索引?

标签: pandasnumpy

解决方案


y_test.values()它们直接与 preds 进行比较,将两者都视为 numpy 数组并进行比较,预测肯定会与实际数据一致,在这种情况下,索引并没有真正定义任何内容,如果您认为 preds 和 y_test 之间存在不匹配由于准确性低,这绝对是模型或数据或其他问题的错误,但预测与 y_test 匹配


推荐阅读