csvToJSON <- function (fileUrl, fileName) {
library(rjson)
data <- read.csv(fileUrl)
jsonData <- toJSON(as.list(data))
fileName <- paste0(fileName, ".json")
write(jsonData, cat(fileName))
}
我创建了此功能,以将csv文件转换为JSON文件。 对于我拥有的csvToJSON函数,输入参数之一是fileName,并且我希望它成为要输出的json文件的名称,因此我将fileName传递给了write()函数。但是,write()函数要求它采用write(jsonData,“ fileName”)的形式。我怎么解决这个问题?换句话说,如何在输入的文件名上添加引号?
答案 0 :(得分:1)
要传递未加引号的列名并将其用作函数中的字符串,我们可以使用deparse
和substitute
csvToJSON <- function (fileUrl, fileName) {
fileName <- deparse(substitute(fileName))
data <- read.csv(fileUrl)
jsonData <- toJSON(as.list(data))
fileName <- paste0(fileName, ".json")
write(jsonData, fileName)
}
csvToJSON("data.baltimorecity.gov/api/views/dz54-2aru/", jsonData)