我一直在试图运行使用Python 2.7在MacBook Pro上熊猫和不断收到以下错误:熊猫IO错误:[错误13]许可被拒绝
文件“/用户/霍夫斯塔特/蟒蛇/ lib中/ python2 0.7 /站点包/大熊猫/ IO/common.py”,线路376,在_get_handle F =开放(path_or_buf,模式)
IO错误:[错误13]权限被拒绝:“数据集/ cats_0.8_0。 6_0.4_0.2/target.csv'
它看起来像是由于某些原因,为下面的文件创建的文件夹(包括target.csv)具有受限制的权限。下面是代码如下所示:
def get_tables(df):
categorical_cols = [col for col in df.columns if col.endswith('_cat')]
train_table = df[categorical_cols]
for col in categorical_cols:
train_table = pd.concat(
[
train_table, pd.get_dummies(
train_table[col],
prefix=col,
prefix_sep='_',
dummy_na=False).astype(int)
],
axis=1,
join='inner')
train_table.drop(col, axis=1, inplace=True)
print('Tables Created :)')
return train_table
没有问题,创建表,但随后试图如下救他们时,我得到一个权限错误。
def save_tables(data_path,
df,
top_quant,
mh_quant,
ml_quant,
low_quant,
train=True):
df = categorize_features(df, top_quant, mh_quant, ml_quant, low_quant)
X = get_tables(df)
os.makedirs(data_path, True)
x_path = '{}/tournament_table.csv'.format(data_path)
if train:
x_path = '{}/train_table.csv'.format(data_path)
y = df['target'].to_frame()
y.columns = ['target']
y.to_csv('{}/target.csv'.format(data_path), index=False)
else:
ids = df['id'].to_frame()
ids.columns = ['id']
ids.to_csv('{}/ids.csv'.format(data_path), index=False)
X.to_csv(x_path, index=False)
错误的出现是因为你要使用一些文件你没有不是因为'/ Users/Hofstadter/anaconda/lib/python2.7/site-packages/pandas/io/common.py'没有正确的权限。 –
@ juanpa.arrivillaga嗯,好吧,但为什么我不能访问标准熊猫图书馆的一部分?有没有一种方法可以重新安装熊猫,让我拥有正确的许可?如果有帮助,我正在使用Anaconda。 – 114
如果你是'Hofstadter'并且文件属于你,那么你必须使用'u + r'或'a + r',而不是'o + r'来使它可读。但是'mode'的价值是什么? – DyZ