R JSON 文件


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

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

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

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

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

查看是否安装成功:

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

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

R 实例
{ 
   "id":["1","2","3"],
   "name":["google","itzixishi","baidu"],
   "url":["www.google.com","www.itzixishi.com","www.baidu.com"],
   "likes":[ 111,222,333]
}

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

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

R 实例
# 载入 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" "itzixishi" "baidu"

$url
[1] "www.google.com" "www.itzixishi.com" "www.baidu.com"

$likes
[1] 111 222 333

[1] "==============="
$id
[1] "1" "2" "3"

[1] "==============="
[1] "itzixishi"

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

R 实例
# 载入 rjson 包
library("rjson")

# 获取 json 数据
result <- fromJSON(file = "sites.json")

# 转为数据框
json_data_frame <- as.data.frame(result)

print(json_data_frame)

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

  id       name                url likes
1  1     google     www.google.com   111
2  2 ittzixishi www.ittzixishi.com   222
3  3      baidu      www.baidu.com   333
本教程仅供参考学习,如用于商业带来的问题,本站概不负责。
关注公众号
关注公众号

©2020 IT自习室京ICP备20010815号