R JSON 文件

JSON: JavaScript Object Notation(JavaScript 对象表示法)。

JSON 是存储和交换文本信息的语法。

JSON 类似 XML,但比 XML 更小、更快,更易解析。

如果你对 JSON 还不了解,可以先查阅:JSON 教程

R 语言读写 JSON 文件需要安装扩展包,我们可以在 R 到控制台输入以下命令来安装:

install.packages("rjson",repos="https://mirrors.ustc.edu.cn/CRAN/")

查看是否安装成功:

>any(grepl("rjson",installed.packages()))[1]TRUE

创建 sites.json 文件,json 文件与测试脚本同一目录下,代码如下:

{"id":["1","2","3"],"name":["Google","Nhooo","Taobao"],"url":["www.google.com","www.shangmayuan.com","www.taobao.com"],"likes":[111,222,333]}

接下来我们可以使用 rjson 包来载入 json 文件的数据。

查看数据,某一行使用 [ ], 指定的行和列使用 [[ ]]:

#载入rjson包library("rjson")#获取json数据result<-fromJSON(file="sites.json")#输出结果print(result)print("===============")#输出第1列的结果print(result[1])print("===============")#输出第2行第2列的结果print(result[[2]][[2]])

执行以上代码输出结果为:

$id[1]"1""2""3"$name[1]"Google""Nhooo""Taobao"$url[1]"www.google.com""www.shangmayuan.com""www.taobao.com"$likes[1]111222333[1]"==============="$id[1]"1""2""3"[1]"==============="[1]"Nhooo"

我们也可以使用 as.data.frame() 函数将 json 文件数据可以转为数据框类型,这样我们就更方便对数据进行操作:

#载入rjson包library("rjson")#获取json数据result<-fromJSON(file="sites.json")#转为数据框json_data_frame<-as.data.frame(result)print(json_data_frame)

执行以上代码输出结果为:

idnameurllikes11Googlewww.google.com11122Nhooowww.shangmayuan.com22233Taobaowww.taobao.com333
编辑于2024-05-20 14:34