我試圖加載一個.csv文件使用pd.read_csv函數,當我得到一個錯誤,儘管文件路徑是正確的,並使用原始字符串。找不到pandas.read_csv文件,儘管正確的路徑與原始文本
df = pd.read_csv('C:\\Users\\user\\Desktop\\datafile.csv')
df = pd.read_csv(r'C:\Users\user\Desktop\datafile.csv')
df = pd.read_csv('C:/Users/user/Desktop/datafile.csv')
所有,給出以下
FileNotFoundError錯誤:文件B '\ XE2 \ X80 \ xaaC:/Users/user/Desktop/tutorial.csv'(或相關路徑)不存在。
只有當我複製到工作目錄的文件將加載正確。有沒有人知道可能導致錯誤的原因?我以前已經加載了其他數據集完整的文件路徑沒有任何問題,我目前只遇到問題,因爲我已經重新安裝我的python(通過Anaconda軟件包安裝程序)。
編輯: 我發現導致問題的問題。當我從文件屬性窗口複製文件路徑時,我無意中複製了另一個看起來不可見的字符。分配該複製的字符串也會導致unicode錯誤。刪除隱形字符使得上面的任何代碼都可以工作。
'e2 80 aa'是U + 202A的UTF-8編碼,即從左到右的嵌入符號。很確定這不屬於路徑字符串,所以它表明你有一個字符串編碼問題。如果你在py3('u'C:\\ ...'')或者字節字符串文字(如果你在py3中),試試Unicode字符串文字('b'C:\\ ...'')。 – wildwilhelm
如果您從路徑中刪除驅動器(即'/Users/user/Desktop/datafile.csv'),它會工作嗎? – cmaher
不知道'U + 202A'是怎麼進去的。這是剪切/粘貼?如果是這樣,請手動刪除並重新輸入。系統上的默認語言是什麼?如果從右到左書寫,那麼這很有趣!我對文件系統沒有過濾掉字符感到有點驚訝。 – tdelaney