引用嵌套列表中未加引号的成员

发布于 2024-09-18 01:36:36 字数 1408 浏览 2 评论 0原文

使用 R,我生成一个包含某些未加引号的元素的列表。请参阅底部 - 这是无效的 JavaScript 代码。

R 代码(不起作用)

outq <- lapply (out, function (el){
 el <- if( is.factor(el$ann) ){ 
 el$ann <- apply(el$ann, 1, function(e){ e <- paste('"', e, '"', sep="") })
 }   
}) 

在 R 语言中,如何引用 list$x$ann 因子的成员?

当我尝试解析此 JSON 时,json2.js 失败。

示例数据(无效 JSON)

results = JSON.parse(
{
 "result": {
 "tot": {
 "molal": [ 0.00071243, 0.00071243,      4,      4 ],
   "ann": [ , , ,  ] 
},
   "desc": {
 "val": [ 8.3486,      4, 0.8531, 4.0025, 0.99999, 0.00072541, 0.00071243,    100, -1.2983e-05, -0.00016223,     17, 111.02, 55.511 ],
   "ann": [ Charge balance, Adjusted to redox eq, , , , , , , , , , ,  ] 
},
   "species": {
 "molal": [ 55.508, 0.00029101, 2.3071e-09, 0.00042017, 0.00028731, 4.4532e-06, 4.9292e-07, 0.00069149, 1.0274e-05, 6.2142e-06, 4.9139e-12,      4,      0, 4.1166e-27,      4, 8.5144e-21 ],
   "act": [ 0.8531, 0.00010921, 4.4812e-09, 1.4857e-06, 7.7889e-05, 4.4532e-06, 9.6777e-07, 0.00024834, 3.3916e-06, 0.00028204, 4.9139e-12, 2.2702,      0, 4.1166e-27, 3.7925, 1.8453e-20 ] 
},
   "master": {
 "molal": [ 0.00071243, 0.00071243,      4, 8.2332e-27,      4, 1.7029e-20 ] 
},
   "pphases": {
 "moles": 9.9993,
   "delta": -0.00071243 
},
   "ListInfo": {
 "n": 1,
   "format": true 
} 
} 
}
);

Using R, I generate a list that contains certain unquoted elements. Please see at the bottom- it is invalid javascript code.

R code (does not work)

outq <- lapply (out, function (el){
 el <- if( is.factor(el$ann) ){ 
 el$ann <- apply(el$ann, 1, function(e){ e <- paste('"', e, '"', sep="") })
 }   
}) 

In the R language, How can I quote the members of the list$x$ann factor?

When I try to parse this JSON, json2.js fails.

Sample Data (Invalid JSON)

results = JSON.parse(
{
 "result": {
 "tot": {
 "molal": [ 0.00071243, 0.00071243,      4,      4 ],
   "ann": [ , , ,  ] 
},
   "desc": {
 "val": [ 8.3486,      4, 0.8531, 4.0025, 0.99999, 0.00072541, 0.00071243,    100, -1.2983e-05, -0.00016223,     17, 111.02, 55.511 ],
   "ann": [ Charge balance, Adjusted to redox eq, , , , , , , , , , ,  ] 
},
   "species": {
 "molal": [ 55.508, 0.00029101, 2.3071e-09, 0.00042017, 0.00028731, 4.4532e-06, 4.9292e-07, 0.00069149, 1.0274e-05, 6.2142e-06, 4.9139e-12,      4,      0, 4.1166e-27,      4, 8.5144e-21 ],
   "act": [ 0.8531, 0.00010921, 4.4812e-09, 1.4857e-06, 7.7889e-05, 4.4532e-06, 9.6777e-07, 0.00024834, 3.3916e-06, 0.00028204, 4.9139e-12, 2.2702,      0, 4.1166e-27, 3.7925, 1.8453e-20 ] 
},
   "master": {
 "molal": [ 0.00071243, 0.00071243,      4, 8.2332e-27,      4, 1.7029e-20 ] 
},
   "pphases": {
 "moles": 9.9993,
   "delta": -0.00071243 
},
   "ListInfo": {
 "n": 1,
   "format": true 
} 
} 
}
);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

东走西顾 2024-09-25 01:36:50

我使用这个 R 代码向前迈进了一步:

outq <- lapply (out, function (el){el <- if( is.factor(el$ann) ){ el$ann <- lapply(el$ann, function(e){   e <- paste('"', e, '"', sep="") })} else {el}})  

I have advanced a step forward using this R code:

outq <- lapply (out, function (el){el <- if( is.factor(el$ann) ){ el$ann <- lapply(el$ann, function(e){   e <- paste('"', e, '"', sep="") })} else {el}})  
傲影 2024-09-25 01:36:48

是否有原因无法将 RJSON / RJSONIO 包用于 R ?

Is there a reason you cannot use the RJSON / RJSONIO packages for R ?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文