看板 R_Language 關於我們 聯絡資訊
這個問題是我去年怒轉 Linux 的主因 , 我測試的結果是 當你在RStudio裡面載入大量中文字元 big 5 的檔案後 , 即便有編碼設定 , 只要你對 Script 做存取動作便會發生 發生後所有RStudio的功能會完全癱瘓 , 可以操作但基本 上沒有任何意義 一旦發生 , 只要你往後對該Script 做任何操作 , 特別 是像跟Syntax 有關的 tab complete , 便會出現這個bug 我猜是在存取時有些默認字元遇到 big 5 碼 , 產生無意 義 , 但被誤以為指令的段落 , 造成直譯的parser crash 我對 R 的整體架構還沒很全面的想法 , 所以是用猜的 癱瘓當下解決方式: Session -> Terminate R 但該Script是否廢了 ? 好險還沒有 , 我有試出一個依舊 能執行該Script的方式 , 只要你叫出該Script , 不要做 任何動作 , 直接全選貼到新開的 Script , 但切記不要把 新Script做存檔動作 , 否則該問題會重新出現 , 只要不 存檔 , 你依舊可以自由操作該 Script 環境編碼: Tools -> Global Option -> General BTW , 改環境編碼對處理這個問題沒有幫助 , 問題不是 package 是script 本身 , 目前經驗是有載入中文檔案 有中文註解 或是有屬性名是中文 , 在 Windows都會有機 會發生 , 且只要一旦在存取Script發生 , 該Script就 會一直發生 這問題我剛遇到有考慮要回報 , 但RStudio的crash support 那時候翻寫 "Only for Mac/Linux" 我就沒回報了 , 整體來 說 , 是 Windows RStudio 的問題 不是 R的問題 希望對你有幫助 方便的話可以把標題改成方便遇到的人查詢: "invalid multibyte" ============原始可能遇到的 erro================ invalid multibyte character in parser at line 1 invalid multibyte string, element 1 =============================================== ※ 引述《jjx66os ()》之銘言: : [問題敘述]: : 之前都是在Mac筆電上編寫R : 最近有些程式運算比較複雜些,改用Windows的桌機執行 : 不過當我打開RStudio,進行像是下載package的時候 : 都會碰到Error in nchar(homeDir) : invalid multibyte string, element 1 : 這樣的訊息 : 我的安裝路徑資料夾都是英文的,安裝位置也在預設的地方 : 但只要先執行Sys.setlocale(category = "LC_ALL", locale = "us") : 就沒問題了,不過關掉後下次再打開還是會有這樣的問題 : 請問如何讓Sys.setlocale(category = "LC_ALL", locale = "us")成為我的設定值呢? : 找不到RStudio設定預設編碼的地方 : 或者有沒有其他的解決方法呢??? : 我的系統為Windows10專業版,R 3.2.5,RStudio應為最新版。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.136.229.38 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1462581313.A.05F.html ※ 編輯: JackBaska (220.136.229.38), 05/07/2016 08:42:26
jjx66os: 感謝回復,原文標題已改~ 05/07 13:18
memphis: 厲害喔 05/07 14:47