由于数挖作业要使用pycharm处理数据,开始从零开始摸索python。所以可以说是有很多傻瓜问题,但是还是记录一下遇到的问题和解决方法:
目录- 1、UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa1 in position 0: invalid start byte 问题
- 2、SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame 问题
- 3、TypeError: cannot use a string pattern on a bytes-like object
我想要读入文件,代码如下:
data = pd.read_csv('xxx.csv')
出错的翻译: 'utf-8’编解码器无法解码位置0中的字节0xa1:无效的起始字节 。
说白了就是文件保存的时候选择的不是utf-8的编码格式,我当时选了ANSI,所以报错。另存一次文件即可。
解决方案:
教程
翻译:一个值试图在DataFrame的一个切片的副本上设置。
一开始我的代码:(问题出在最后一句给单元格赋值。这里我企图给cutwords那一列的第ii行赋值,但是报错了。)
#多加一列用于存储分词 data['cutwords'] = 'cutwords' for ii in np.arange(row): #...(中间代码省略) data.cutwords[ii] = str(cutwords.values)
查找资料:给某一个单元格赋值
将最后一句改为:
data.loc[ii,'cutwords'] = str(cutwords.values)
最后print(data)查看一下数据,发现没有问题了。
3、TypeError: cannot use a string pattern on a bytes-like object问题翻译:不能在字节类对象上使用字符串模式。
原来的代码:
data['number'] = "number" s = SnowNLP(reviews) number = s.sentiments
笑死,突然发现我的review是数组,应该写成 review[i]才对。
END



