Pyradiomics提示错误:arrays used as indices must be of integer (or boolean) type

  • Post author:
  • Post category:其他


最近用pyradiomics提影像特征时,出现了如下报错:


IndexError: arrays used as indices must be of integer (or boolean) type

找了一通,发现可以用以下方法进行解决:

首先找出报错位置,是不是

glcm/gldm/glrlm/glszm

文件中的一个,如果是的话,去pyradiomics包内对应的radiomics文件夹下(如果不记得,可以用

pip show pyradiomics

命令来查找具体位置)

在这里插入图片描述

找到这几个文件后,打开,在对应位置添加**if list(emptyGrayLevels)**这句话。

以glrlm文件为例,在 P_glrlm = numpy.delete(P_glrlm, emptyGrayLevels – 1, 1)前面添加if list(emptyGrayLevels):

if list(emptyGrayLevels):
      P_glrlm = numpy.delete(P_glrlm, emptyGrayLevels - 1, 1)

其他文件同理,就是在numpy.delete前面加上这句话就行。

注:如果添加之后,其他文件还是报同样的错,就继续打开相应文件进行添加(比如,我是从glcm文件开始报错的,glcm/gldm/glrlm/glszm这四个文件都改了之后,问题才解决了)。



版权声明:本文为sinat_35779431原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。