当前位置:   article > 正文

Python报错-TypeError: only integer scalar arrays can be converted to a scalar index的处理方法

only integer scalar arrays can be converted to a scalar index

TypeError: only integer scalar arrays can be converted to a scalar index

报错信息直接翻译过来是只有整型标量数组才能转换成标量索引,然而问题一般都不在于你的索引是不是整数。这个报错一般会出现在你想使用一个索引数组去索引一个列表,即诸如list[indexarray]的形式,此时就会出现此报错。

比较简单的解决方法是把你想要索引的列表转换为numpy数组,再对其进行索引,即:np.array(list)[indexarray]

扩展一下,用索引列表去索引另一个列表也是不被允许的,即使用 list[indexlist] 时会出现 list indices must be integers or slices, not list的报错信息,此时同样可以将list转化为ndarray避免报错。

最后总结一下,在python中用索引数组或索引列表去索引某个列表都是不被允许的;相反,你既可以用索引数组也可以用索引列表去索引某个numpy数组。所以当你想使用较为简便的索引操作时,尽可能地将数据类型转换为numpy数组进行处理,而不是列表。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/642867
推荐阅读
相关标签
  

闽ICP备14008679号