我是一个相对较新的python用户,使用我的IDE(pycharm)得到一个时髦的错误,但是在使用cmd行时没有.
我只是:
path ='C:\Users\Dell\Downloads\users.dat' import pandas as pd unames = ['user_id', 'gender', 'age', 'occupation', 'zip'] users = pd.read_table(path, sep='::', header=None, names=unames)
之后我收到一个错误,表明:
ParserWarning: Falling back to the 'python' engine because the 'c' engine does not support regex separators; you can avoid this warning by specifying engine='python'. ParserWarning)
当我将相同的命令输入到cmd行并按users
预期打印数据时(即没有错误或任何时髦).
编辑:同样当我输入
ratingsdata ='C:\Users\Dell\Downloads\ratings.dat'
我得到一个时髦IOError: [Errno 22] invalid mode ('r') or filename:
不确定为什么/r
在文件路径中不正常...我理解它是正则表达式,但在引用行内?
救命!
如果您正在使用"Python for Data Analysis"并使用PyCharm和Python 3.x,那么可以在此处指定引擎:
ratings = pd.read_table(path + '/ratings.dat', sep='::', header=None, names=rnames, engine='python')
看起来你正试图从"Python For Data Analysis"一书中做一个练习,我遇到了同样的问题.您所要做的就是使用双斜杠而不是单斜杠,如下所示:
path ='C:\\Users\\Dell\\Downloads\\ratings.dat'
看起来像 Python 2.7 Pandas只是不处理看起来像 regexish的分隔符.如engine='python'
警告中所示,可以通过在调用中添加作为命名参数来解决初始"错误" .