pandas解析MovieLens 1M数据集报错 UnicodeDecodeError
1. 问题描述
跟着书本学习的时候,发现从github下载的数据集,用pandas读取的时候会报错:

2. 解决办法
显然是编码的问题,用file命令查看文件编码:

ISO-8859在python中的编码是ISO-8859-1,可以通过下述函数判断出来:
pip install chardet
def get_encoding(file):
    with open(file, 'rb') as f:
        return chardet.detect(f.read())['encoding']

因此,使用encoding参数指定实际的文件格式即可。
也可以
movies = pd.read_table('movies.dat', encoding=get_encoding('movies.dat'), sep='::', header=None, names=mnames, engine='python')
 
                    
                 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号