我只想读取另一个csv文件后我从Data Frame转换的 csv 文件,同时我尝试从其中删除标题。
然后我得到了以下错误:
PermissionError: [Errno 13] Permission denied: 'X_Data.csv'
我的python代码:
import pandas as pd
import numpy as np
df = pd.read_csv('input_doc.csv').replace(' ?', np.nan).dropna()
data_X = df.iloc[:, 1:15].values
data_Y = df.iloc[:, :1].values
clean_X = pd.DataFrame(data_X);
clean_Y = pd.DataFrame(data_Y);
clean_X.to_csv("X_Data.csv", index=False)
clean_Y.to_csv("Y_Data.csv", index=False)
X = pd.read_csv("X_Data.csv", encoding="utf-8", header=1)
Y = pd.read_csv("Y_Data.csv", encoding="utf-8", header=1)
在阅读时,我也没有删除标题时遇到同样的错误。
我发现了几个与我的问题类似的问题,但这些问题无法解决我的问题。
我使用Windows 10中的Anaconda Spyder Editor编码。
如何在不收到此错误的情况下阅读此文件? 我缺少什么?
非常感谢你!任何帮助将不胜感激!
答案 0 :(得分:7)
在Windows中,如果您打开了CSV文件(例如在Excel中),并且您运行该脚本,则无法保存到X_Data.csv
,因为该文件正在使用中并且会引发PermissionError
。
关闭文件/ Excel并尝试再次运行脚本
答案 1 :(得分:3)
我认为您用来运行python文件的用户没有读取(或者如果您想更改文件并保存它的写入权限)CSV文件或其目录。
如果您使用的是Linux,请使用CHMOD命令授予对文件的访问权限:
公开访问:chmod 777 csv_file
如果您使用的是Windows,请更改文件和文件夹的隐私和权限。
答案 2 :(得分:0)
对于我来说,我没有完全打开文件,但是我已经在另一个应用程序中上传了相同的文件,这就是问题所在。因此,不允许从另一个应用程序读取该文件。一旦我关闭/刷新其他应用程序,python应用程序便能够读取而没有任何权限错误。
答案 3 :(得分:0)
其他人描述的任何东西可能都是正确的。
在我的特定情况下:
我要读取的文本文件在我的工作笔记本电脑上的共享驱动器上。公司同步共享驱动器,以便您不会丢失数据。与我同步是问题所在。我手动同步了文件夹,然后能够读取文件。
如果文件未同步,我怀疑您是否可以打开文件。我尝试过,并在jupyter笔记本中显示“权限被拒绝”。
希望有帮助。