看板 R_Language 關於我們 聯絡資訊
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 新手(沒寫過程式,R 是我的第一次) [問題敘述]: 我目前用jsonlite來讀json檔 但是因為我的json檔裡面每個物件是用enter隔開 (用記事本打開看到的是空格,但匯入excel卻自動分列顯示,所以應該是用enter隔開) 所以讀入時會有問題 (我有嘗試複製一小段,把每個物件中間改成逗號,就可以跑) 但是我不知道要怎麼去改每個物件中間的分隔方式 問google大神也找不到可以解決的方法 (也有可能我是新手,所以沒有輸入正確的關鍵字) 所以來問版上的大大們了! 感謝各位! [程式範例]: 以下我輸入的程式碼: j = file.choose() y = fromJSON(j, flatten = FALSE) Error in feed_push_parser(readBin(con, raw(), n), reset = TRUE) : parse error: after array element, I expect ',' or ']' 23.92,-28.13],"eye":"right"} {"ts":114513748,"s":0,"pd":3.79 (right here) ------^ 出現了中間分隔的錯誤 我的json檔大致長的像下面那樣 {"test": [{"ts":114513748,"s":0,"pc":[-30.90,-23.92,-28.13],"eye":"right"} {"ts":114513748,"s":0,"pd":3.79,"eye":"right"}]} [環境敘述]: R version 3.2.3 (2015-12-10) Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows >= 8 x64 (build 9200) locale: [1] LC_COLLATE=Chinese (Traditional)_Taiwan.950 [2] LC_CTYPE=Chinese (Traditional)_Taiwan.950 [3] LC_MONETARY=Chinese (Traditional)_Taiwan.950 [4] LC_NUMERIC=C [5] LC_TIME=Chinese (Traditional)_Taiwan.950 attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] jsonlite_0.9.20 loaded via a namespace (and not attached): [1] tools_3.2.3 curl_0.9.4 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.225.221.245 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1463978742.A.479.html ※ 編輯: amygm307 (36.225.221.245), 05/23/2016 12:47:28
Wush978: http://wush.ghost.io/r-jsonlines/ 不知道有沒有用 05/23 12:55
celestialgod: 最簡單的解法就是上面文章的strsplit + sapply 05/23 13:25
amygm307: 請問上面連結文章中fromJSON是哪個套件?我照著他的方式 05/23 14:48
amygm307: 還是不work 05/23 14:49
amygm307: src = file.choose() strsplit(src, "\n")%>%sapply(fr 05/23 14:50
amygm307: 出現的error是一樣的,然後試了下面的作法 05/23 14:51
amygm307: 顯示 Couldn't resolve host name 05/23 14:52
celestialgod: src <- paste0(readLInes(file.choose()),collapse= 05/23 15:17
celestialgod: '\n') 05/23 15:17
Wush978: 我把你的文字丟到JSON validator上,那本來就有錯... 05/23 18:57
Wush978: 所以不是R的問題,是你資料格式不正確的問題吧 05/23 18:58