2022年6月17日 星期五

R-normalizePath Error - OneDrive/??

問題:

近日安裝 Windows 與 R之後會有以下 normalizePath 語法錯誤:




查詢發現電腦確實有以下之目錄 C:\Users\asus\OneDrive\文件, 因此最有可能原因是此路徑包括中文字型"文件", 因此R解析結果為錯誤??

使用 path.expand 函數亦是錯誤

> path.expand("~/")

[1] "C:/Users/asus/OneDrive/??/"


使用 normalizePath 函數也有錯誤

> normalizePath(path.expand("~/"))

[1] "C:\\Users\\asus\\OneDrive\\??\\"

Warning message:

In normalizePath(path.expand(path), winslash, mustWork) :

  path[1]="C:/Users/asus/OneDrive/??/": 檔案名稱、目錄名稱或磁碟區標籤語法錯誤。


方法:

步驟1. 先關閉 RStudio


步驟2. 新增系統變數

1. 程式集 \ 設定 \ 關於 \ 進階系統設定


2. 選取環境變數


3. 按 系統變數 \ 新增














4. 設定名稱與值, 依實際需求修改, 按確定.

變數名稱: HOME

變數值:     C:\Users\asus






步驟3. 重新開啟 RStudio 或重新啟動 Windows 結果為正確

> path.expand("~/")

[1] "C:/Users/asus/"

> normalizePath(path.expand("~/"))

[1] "C:\\Users\\asus"

# end