2017-04-24 64 views

回答

2

根据所述的xgboost source code documentation,此错误只发生在one place - 在一个DMatrix内部函数。这里的源代码摘录如下:

if len(feature_names) != len(set(feature_names)): 
    raise ValueError('feature_names must be unique') 

所以,这里的错误文字很漂亮,您的test_df至少有一个重复的功能/列名称。

您已在此贴子上标记pandas;这表明test_df是熊猫DataFrame。在这种情况下,DMatrixliterally runs df.columns来提取feature_names。检查您的test_df重复的列名称,删除或重命名它们,然后再次尝试DMatrix()

-1

解决此问题的一种方法是使用在准备数据时唯一的列名称,然后应该解决问题。

相关问题