我尝试使用 .json 将 JSON 字符串保存到 CSV fwrite。但我无法将其加载回来fread。
问题:我应该在这里使用什么报价设置?
library(data.table)
library(jsonlite)
r <- list(a = "text")
d <- data.table(
a = toJSON(r, auto_unbox = TRUE)
)
tmp <- tempfile()
fwrite(d, tmp, quote = TRUE, qmethod = "escape")
fromJSON(fread(tmp)[["a"]][1])
Run Code Online (Sandbox Code Playgroud)
上面的代码产生错误:
Error: lexical error: invalid char in json text.
{\"a\":\"text\"}
(right here) ------^
Run Code Online (Sandbox Code Playgroud)
qmethod = "double"当前版本(1.12.3)的解决方案:
library(data.table)
library(jsonlite)
r <- list(a = "text")
d <- data.table(
a = toJSON(r, auto_unbox = TRUE)
)
tmp <- tempfile()
fwrite(d, tmp, quote = TRUE, qmethod = "double")
fromJSON(gsub("\"\"", "\"", fread(tmp)[["a"]], fixed = TRUE)[1])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
845 次 |
| 最近记录: |