首页 > 解决方案 > UnicodeDecodeError:“utf-8”编解码器无法解码位置 0 中的字节 0xb0:无效的起始字节

问题描述

有谁知道如何解决以下问题?我正在使用 google colab 运行我的神经网络,并希望使用下面的数组创建混淆矩阵,但无法解决问题。

label_names_array = np.chararray(3, itemsize = 4).decode("utf-8")

for key, value in label_names_array.items():
  label_names_array[key] = value
label_names_array

UnicodeDecodeError Traceback (最近一次调用最后一次) in () ----> 1 label_names_array = np.chararray(3, itemsize = 4).decode("utf-8") 2 3 for key, value in label_names.items() : 4 label_names_array[key] = 值 5 label_names_array

1 帧 /usr/local/lib/python3.6/dist-packages/numpy/core/defchararray.py 在 decode(a, encoding, errors) 562 """ 563 return _to_string_or_unicode_array( --> 564 vec_string(a, object,'解码',_clean_args(编码,错误)))565 566

UnicodeDecodeError:“utf-8”编解码器无法解码位置 0 中的字节 0xb0:无效的起始字节

标签: pythonneural-networkgoogle-colaboratory

解决方案


您的代码有几个问题:首先,我似乎没有找到numpy 数组的方法:我认为.items()它属于 Python 。dictionary因此,您可以使用构造函数直接从数组构建字典并跳过 for 循环:

label_names_array = np.chararray(3, itemsize=4).decode("utf-8")
labels_dict = dict(np.ndenumerate(label_names_array))

你怎么看?

但是,您从很早就开始询问。您应该考虑发布一些代码,展示如何使用数据以及如何构建混淆矩阵。

试试scikit-learn怎么样?


推荐阅读