python IOError: invalid mode ('r') or filename

时间:2024-04-15 08:34:39

我想要用pandas.read_table()将数据表中的数据读到一个pandas DataFrame对象中:

import pandas as pd
unames = ['user_id', 'gender', 'age', 'occupation', 'zip']
users = pd.read_table('C:\1M data\ml-1m\users.dat', sep='::', header = None, names = unames)

但是报错:invalid mode ('r') or filename : 'C:\x01M data\\ml-1m\\users.dat'

这种错误的出现是在使用built-in函数file()或者open()的时候。或者是因为文件的打开模式不对,或者是文件名有问题。前者的话只需要注意文件是否可读或者可写就可以了。后者则是与文件路径相关的问题,需要在文件名前加r或者R转义,如:file(r"e:\Test.txt",'r').或者将反斜杠\变成两个,如file("e:\\Test.txt",'r').

因此,要将代码改为:

users = pd.read_table(r'C:\1M data\ml-1m\users.dat', sep='::', header = None, names = unames)