Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 请参见混淆矩阵中的错误分类_Python_Scikit Learn_Text Classification - Fatal编程技术网

Python 请参见混淆矩阵中的错误分类

Python 请参见混淆矩阵中的错误分类,python,scikit-learn,text-classification,Python,Scikit Learn,Text Classification,我想通过迭代dataframe中的所有数据,从混乱矩阵中看到错误的分类,但它会一次又一次地产生相同的数据,代码有什么问题吗 这是df数据和指数测试 factorize返回标签和唯一性,使用df[“topic”].factorize()[0],您可以在重复的标签上进行迭代。尝试将其更改为df[“topic”].factorize()[1],然后您将迭代唯一值,这应该可以解决问题。@AnnaK。非常感谢,但现在它给出了中的“索引器:只有整数、片(:)、省略号(…)、numpy.newaxis(无)

我想通过迭代dataframe中的所有数据,从混乱矩阵中看到错误的分类,但它会一次又一次地产生相同的数据,代码有什么问题吗

这是df数据和指数测试


factorize返回标签和唯一性,使用df[“topic”].factorize()[0],您可以在重复的标签上进行迭代。尝试将其更改为df[“topic”].factorize()[1],然后您将迭代唯一值,这应该可以解决问题。@AnnaK。非常感谢,但现在它给出了
中的“索引器:只有整数、片(
)、省略号(
)、numpy.newaxis(
)和整数或布尔数组是有效的索引”(如果预测的话!)实际值和conf_mat[actual,predicted]>=10:
,是否唯一不返回数字?唯一不返回numpy数组如果您的数据不是numpy数组,请参阅文档。由于需要整数,可以尝试用np.unique(df[“topic”].factorize()[0])替换df[“topic”].factorize()[0],以避免重复。@AnnaK。谢谢,我看到了惟一的返回categoricalindex和categories,但是有没有一种方法可以将categoricalindex转换为numpy数组来迭代呢?
  from IPython.display import display
    #print( df["topic"].factorize().CategoricalIndex)
    #df["topic"].factorize()
    for predicted in df["topic"].factorize()[0]:
       for actual in df["topic"].factorize()[0]:
         if predicted != actual and conf_mat[actual, predicted] >= 10:
           print("'{}' predicted as '{}' : {} examples.".format(topics[actual],topics[predicted], conf_mat[actual, predicted]))
           display(df.loc[indices_test[(y_test == actual) & (pred == predicted)]][['topic', 'body_wakati']])
           print('')