Python UnicodeDecodeError:&x27;utf8';编解码器可以';在894位置对字节0xb5进行解码:无效的起始字节

Python UnicodeDecodeError:&x27;utf8';编解码器可以';在894位置对字节0xb5进行解码:无效的起始字节,python,utf-8,scikit-learn,Python,Utf 8,Scikit Learn,我正在为一个项目使用scikit learn。在执行特征提取(使用文本数据教程)时,我发现UnicodeDecodeError:“utf8”编解码器无法解码字节 使用python 2.7.8并让buildscikit学习使用make from sklearn.feature_extraction.text import CountVectorizer count_vect = CountVectorizer() X_train_counts = count_vect.fit_transform(

我正在为一个项目使用
scikit learn
。在执行特征提取(使用文本数据教程)时,我发现UnicodeDecodeError:“utf8”编解码器无法解码字节

使用python 2.7.8并让build
scikit学习使用make

from sklearn.feature_extraction.text import CountVectorizer
count_vect = CountVectorizer()
X_train_counts = count_vect.fit_transform(dataset.data)
print(X_train_counts.shape)

请帮助解决此问题。

使用加载文件功能时,编码应为拉丁1

twenty_train = load_files('path/to/folder',encoding='latin1')
在sklearn/datasets/tworn_newscroups.py中

function _download_20newsgroups
...
load_files(train_path, encoding='latin1')

你能给我们看看追踪结果吗?数据集数据中有什么?很明显,其中一个输入数据是不允许的字符。您可能希望尝试使用编解码器,
utf-8-sig
加载数据。文件的前三个字节可能定义了utf-8签名,或者在读取时跳过前三个字节。请检查正在加载的文件是否以utf8编码。这可能是另一种编码。正如你正确地说的,这是编码的问题。我直接使用了“from sklearn.datasets import fetchu newsgroups”,它可以正常工作。如果我使用“from sklearn.datasets import load_files”加载文件,它将不起作用。我想如果我改变我的文件编码,它将使用加载文件工作。谢谢