r - 在 R 中连接字符和数字 json 元素
问题描述
我正在尝试使用 jsonlite 将两个 json 对象连接到 R 中的单个 json 对象中。
作为一个简单的说明,如果我有以下内容:
我正在使用的 api 需要一个 Json 对象,该对象将数据框的列名作为第一个元素,然后是行的数字输出。为了显示:
df <- data.frame(A = rnorm(2), B = rnorm(2), C = rnorm(2))
我需要看起来像:
set.seed(123)
[["A", "B", "C"], [-0.5605,1.5587,0.1293],[-0.2302,0.0705,1.7151]]
但以下尝试未能实现上述目标:
c( jsonlite::toJSON( names(df) ), jsonlite::toJSON( df, "values" ))
paste0( jsonlite::toJSON( names(df) ), jsonlite::toJSON( df, "values" ))
这个解决方案不起作用,我还没有找到任何其他关于如何实现这一点的建议。
任何想法,将不胜感激。
解决方案
一个选项是按行 ( asplit
with MARGIN = 1
) 拆分成一个list
, 连接 ( c
) 与names
数据并应用toJSON
library(jsonlite)
toJSON(c(list(names(df)), asplit(df, 1)))
#[["A","B","C"],[-0.5605,1.5587,0.1293],[-0.2302,0.0705,1.7151]]
推荐阅读
- javascript - 我可以向对象方法添加属性吗?
- c# - 在 FluentAPI 中定义“属于”关系 - EF Core
- algorithm - 证明不是大欧米茄?
- django - 如果在 only() 方法中未提供字段名,如何防止能够访问 QuerySet 对象的字段?
- java - 无论区分大小写,从 JList 中删除单词
- javascript - 在反应中设置多选的默认值
- javascript - jQuery post request Uncaught RangeError:超过最大调用堆栈大小
- react-native - 从 expo 弹出到 expoKit/pure React Native
- python - Python将元组的第二个元素按第一个元素求和
- c++ - TypeA 和 TypeB 是同一个主要类型的别名,如何在 C++ 模板中将它们推断为不同的类型?