当前位置:网站首页>R language objects are stored in JSON
R language objects are stored in JSON
2022-06-27 14:03:00 【Analysis of breeding data】
Reference resources
Getting started with JSON and jsonlite
0. Installation package
install.packages("rjson")
- 1.
1. vector
library(rjson)
vector = c(1:10)
vector
toJSON(vector)
- 1.
- 2.
- 3.
- 4.
> ### vector
> vector = c(1:10) # vector
> vector
[1] 1 2 3 4 5 6 7 8 9 10
> vector_j = toJSON(vector)
> vector_j # json In the form of
[1] "[1,2,3,4,5,6,7,8,9,10]"
> fromJSON(vector_j) # Turn into R
[1] 1 2 3 4 5 6 7 8 9 10
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
2. Data frame
### data.frame
data("npk")
npk # R Data frame
npk_j = toJSON(npk)
npk_j # Json Data frame
fromJSON(npk_j) # Turn into R list
as.data.frame(fromJSON(npk_j)) # Change to data frame
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
> ### data.frame
> data("npk")
> npk # R Data frame
block N P K yield
1 1 0 1 1 49.5
2 1 1 1 0 62.8
3 1 0 0 0 46.8
4 1 1 0 1 57.0
5 2 1 0 0 59.8
6 2 1 1 1 58.5
7 2 0 0 1 55.5
8 2 0 1 0 56.0
9 3 0 1 0 62.8
10 3 1 1 1 55.8
11 3 1 0 0 69.5
12 3 0 0 1 55.0
13 4 1 0 0 62.0
14 4 1 1 1 48.8
15 4 0 0 1 45.5
16 4 0 1 0 44.2
17 5 1 1 0 52.0
18 5 0 0 0 51.5
19 5 1 0 1 49.8
20 5 0 1 1 48.8
21 6 1 0 1 57.2
22 6 1 1 0 59.0
23 6 0 1 1 53.2
24 6 0 0 0 56.0
> npk_j = toJSON(npk)
> npk_j # Json Data frame
[1] "{\"block\":[\"1\",\"1\",\"1\",\"1\",\"2\",\"2\",\"2\",\"2\",\"3\",\"3\",\"3\",\"3\",\"4\",\"4\",\"4\",\"4\",\"5\",\"5\",\"5\",\"5\",\"6\",\"6\",\"6\",\"6\"],\"N\":[\"0\",\"1\",\"0\",\"1\",\"1\",\"1\",\"0\",\"0\",\"0\",\"1\",\"1\",\"0\",\"1\",\"1\",\"0\",\"0\",\"1\",\"0\",\"1\",\"0\",\"1\",\"1\",\"0\",\"0\"],\"P\":[\"1\",\"1\",\"0\",\"0\",\"0\",\"1\",\"0\",\"1\",\"1\",\"1\",\"0\",\"0\",\"0\",\"1\",\"0\",\"1\",\"1\",\"0\",\"0\",\"1\",\"0\",\"1\",\"1\",\"0\"],\"K\":[\"1\",\"0\",\"0\",\"1\",\"0\",\"1\",\"1\",\"0\",\"0\",\"1\",\"0\",\"1\",\"0\",\"1\",\"1\",\"0\",\"0\",\"0\",\"1\",\"1\",\"1\",\"0\",\"1\",\"0\"],\"yield\":[49.5,62.8,46.8,57,59.8,58.5,55.5,56,62.8,55.8,69.5,55,62,48.8,45.5,44.2,52,51.5,49.8,48.8,57.2,59,53.2,56]}"
>
> fromJSON(npk_j) # Turn into R list
$`block`
[1] "1" "1" "1" "1" "2" "2" "2" "2" "3" "3" "3" "3" "4" "4" "4" "4" "5"
[18] "5" "5" "5" "6" "6" "6" "6"
$N
[1] "0" "1" "0" "1" "1" "1" "0" "0" "0" "1" "1" "0" "1" "1" "0" "0" "1"
[18] "0" "1" "0" "1" "1" "0" "0"
$P
[1] "1" "1" "0" "0" "0" "1" "0" "1" "1" "1" "0" "0" "0" "1" "0" "1" "1"
[18] "0" "0" "1" "0" "1" "1" "0"
$K
[1] "1" "0" "0" "1" "0" "1" "1" "0" "0" "1" "0" "1" "0" "1" "1" "0" "0"
[18] "0" "1" "1" "1" "0" "1" "0"
$yield
[1] 49.5 62.8 46.8 57.0 59.8 58.5 55.5 56.0 62.8 55.8 69.5 55.0 62.0 48.8
[15] 45.5 44.2 52.0 51.5 49.8 48.8 57.2 59.0 53.2 56.0
> as.data.frame(fromJSON(npk_j)) # Change to data frame
block N P K yield
1 1 0 1 1 49.5
2 1 1 1 0 62.8
3 1 0 0 0 46.8
4 1 1 0 1 57.0
5 2 1 0 0 59.8
6 2 1 1 1 58.5
7 2 0 0 1 55.5
8 2 0 1 0 56.0
9 3 0 1 0 62.8
10 3 1 1 1 55.8
11 3 1 0 0 69.5
12 3 0 0 1 55.0
13 4 1 0 0 62.0
14 4 1 1 1 48.8
15 4 0 0 1 45.5
16 4 0 1 0 44.2
17 5 1 1 0 52.0
18 5 0 0 0 51.5
19 5 1 0 1 49.8
20 5 0 1 1 48.8
21 6 1 0 1 57.2
22 6 1 1 0 59.0
23 6 0 1 1 53.2
24 6 0 0 0 56.0
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
- 46.
- 47.
- 48.
- 49.
- 50.
- 51.
- 52.
- 53.
- 54.
- 55.
- 56.
- 57.
- 58.
- 59.
- 60.
- 61.
- 62.
- 63.
- 64.
- 65.
- 66.
- 67.
- 68.
- 69.
- 70.
- 71.
- 72.
- 73.
- 74.
- 75.
- 76.
- 77.
- 78.
- 79.
3. matrix
### matrix
mat = matrix(1:9,3,3)
mat
mat_j = toJSON(mat,indent = "0")
mat_j
fromJSON(mat_j)
matrix(fromJSON(mat_j),3,3)
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
> ### matrix
> mat = matrix(1:9,3,3)
> mat
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
>
> mat_j = toJSON(mat,indent = "0")
> mat_j
[1] "[1,2,3,4,5,6,7,8,9]"
> fromJSON(mat_j)
[1] 1 2 3 4 5 6 7 8 9
> matrix(fromJSON(mat_j),3,3)
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
4. Analysis of variance
### Analysis of variance
data(npk)
anova = summary(aov(yield~ N*P*K + block, data=npk))
anova
a_j = toJSON(anova)
a_j
as.data.frame(fromJSON(a_j))
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
> ### Analysis of variance
> data(npk)
> anova = summary(aov(yield~ N*P*K + block, data=npk))
> anova
Df Sum Sq Mean Sq F value Pr(>F)
N 1 189.3 189.28 12.259 0.00437 **
P 1 8.4 8.40 0.544 0.47490
K 1 95.2 95.20 6.166 0.02880 *
block 5 343.3 68.66 4.447 0.01594 *
N:P 1 21.3 21.28 1.378 0.26317
N:K 1 33.1 33.14 2.146 0.16865
P:K 1 0.5 0.48 0.031 0.86275
Residuals 12 185.3 15.44
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
>
> a_j = toJSON(anova)
> a_j
[1] "[{\"Df\":[1,1,1,5,1,1,1,12],\"Sum Sq\":[189.281666666667,8.40166666666664,95.2016666666665,343.295,21.2816666666668,33.1350000000001,0.48166666666667,185.286666666667],\"Mean Sq\":[189.281666666667,8.40166666666664,95.2016666666665,68.659,21.2816666666668,33.1350000000001,0.48166666666667,15.4405555555556],\"F value\":[12.2587342136509,0.544129816860359,6.16568920231712,4.44666642679811,1.37829669341202,2.14597200733998,0.0311949051919551,\"NA\"],\"Pr(>F)\":[0.00437181182579937,0.474904092674435,0.0287950535002327,0.0159387902081939,0.263165282877167,0.168647878500492,0.862752085685407,\"NA\"]}]"
>
> as.data.frame(fromJSON(a_j))
Df Sum.Sq Mean.Sq F.value.12.2587342136509
1 1 189.2816667 189.2816667 12.25873
2 1 8.4016667 8.4016667 12.25873
3 1 95.2016667 95.2016667 12.25873
4 5 343.2950000 68.6590000 12.25873
5 1 21.2816667 21.2816667 12.25873
6 1 33.1350000 33.1350000 12.25873
7 1 0.4816667 0.4816667 12.25873
8 12 185.2866667 15.4405556 12.25873
F.value.0.544129816860359 F.value.6.16568920231712
1 0.5441298 6.165689
2 0.5441298 6.165689
3 0.5441298 6.165689
4 0.5441298 6.165689
5 0.5441298 6.165689
6 0.5441298 6.165689
7 0.5441298 6.165689
8 0.5441298 6.165689
F.value.4.44666642679811 F.value.1.37829669341202
1 4.446666 1.378297
2 4.446666 1.378297
3 4.446666 1.378297
4 4.446666 1.378297
5 4.446666 1.378297
6 4.446666 1.378297
7 4.446666 1.378297
8 4.446666 1.378297
F.value.2.14597200733998 F.value.0.0311949051919551 F.value..NA.
1 2.145972 0.03119491 NA
2 2.145972 0.03119491 NA
3 2.145972 0.03119491 NA
4 2.145972 0.03119491 NA
5 2.145972 0.03119491 NA
6 2.145972 0.03119491 NA
7 2.145972 0.03119491 NA
8 2.145972 0.03119491 NA
Pr..F..0.00437181182579937 Pr..F..0.474904092674435
1 0.004371812 0.4749041
2 0.004371812 0.4749041
3 0.004371812 0.4749041
4 0.004371812 0.4749041
5 0.004371812 0.4749041
6 0.004371812 0.4749041
7 0.004371812 0.4749041
8 0.004371812 0.4749041
Pr..F..0.0287950535002327 Pr..F..0.0159387902081939
1 0.02879505 0.01593879
2 0.02879505 0.01593879
3 0.02879505 0.01593879
4 0.02879505 0.01593879
5 0.02879505 0.01593879
6 0.02879505 0.01593879
7 0.02879505 0.01593879
8 0.02879505 0.01593879
Pr..F..0.263165282877167 Pr..F..0.168647878500492
1 0.2631653 0.1686479
2 0.2631653 0.1686479
3 0.2631653 0.1686479
4 0.2631653 0.1686479
5 0.2631653 0.1686479
6 0.2631653 0.1686479
7 0.2631653 0.1686479
8 0.2631653 0.1686479
Pr..F..0.862752085685407 Pr..F...NA.
1 0.8627521 NA
2 0.8627521 NA
3 0.8627521 NA
4 0.8627521 NA
5 0.8627521 NA
6 0.8627521 NA
7 0.8627521 NA
8 0.8627521 NA
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
- 46.
- 47.
- 48.
- 49.
- 50.
- 51.
- 52.
- 53.
- 54.
- 55.
- 56.
- 57.
- 58.
- 59.
- 60.
- 61.
- 62.
- 63.
- 64.
- 65.
- 66.
- 67.
- 68.
- 69.
- 70.
- 71.
- 72.
- 73.
- 74.
- 75.
- 76.
- 77.
- 78.
- 79.
- 80.
- 81.
- 82.
- 83.
- 84.
- 85.
- 86.
- 87.
- 88.
- 89.
- 90.
- 91.
- 92.
- 93.
anova Of Json Format , Turn into R When the format , Use data.frame The effect is not very good .
If there's a good solution , Update again !
边栏推荐
- JVM performance tuning and monitoring tools -- JPS, jstack, jmap, jhat, jstat, hprof
- 实现WordPress上传图片自动重命名的方法
- 剑指 Offer II 039. 直方图最大矩形面积 单调栈
- POSIX AIO -- Introduction to glibc version asynchronous IO
- 巧用redis实现点赞功能,它不比mysql香吗?
- 招标公告:上海市研发公共服务平台管理中心Oracle一体机软硬件维保项目
- Semaphore of thread synchronization
- 【业务安全-04】万能用户名及万能密码实验
- 机械硬盘和ssd固态硬盘的原理对比分析
- Shell 简明教程
猜你喜欢
Naacl 2022 | TAMT: search the transportable Bert subnet through downstream task independent mask training
Kyndryl partnered with Oracle and Veritas
【业务安全-02】业务数据安全测试及商品订购数量篡改实例
[安洵杯 2019]Attack
ENSP cloud configuration
Axi bus
隱私計算FATE-離線預測
一次性彻底解决 Web 工程中文乱码问题
Tsinghua & Shangtang & Shanghai AI & CUHK proposed Siamese image modeling, which has both linear probing and intensive prediction performance
[WUSTCTF2020]girlfriend
随机推荐
[daily 3 questions (3)] maximum number of balls in the box
Type 'image' is not a subtype of type 'imageprovider < object > solution
Sword finger offer II 039 Histogram maximum rectangular area monotonic stack
机械硬盘和ssd固态硬盘的原理对比分析
jvm 性能调优、监控工具 -- jps、jstack、jmap、jhat、jstat、hprof
Too many requests at once, and the database is in danger
CCID Consulting released the database Market Research Report on key application fields during the "14th five year plan" (attached with download)
Half find (half find)
Axi bus
Summary of basic usage of command line editor sed
Semaphore of thread synchronization
Acwing game 57
SFINAE
Li Kou's 81st biweekly match
如何使用200行代码实现Scala的对象转换器
关于接口测试自动化的总结与思考
Principle Comparison and analysis of mechanical hard disk and SSD solid state disk
Interviewer: do you understand redis' shared object pool?
Shell concise tutorial
Prometheus 2.26.0 new features