我有一个包含2列的数据框,其中包含JSON,如: 我有2列,每列中的每一行都是JSON。
df$col1[1] <- "[14,7,5,3,4,0,1,7,2,3,1,18,13,4,23,7,8,8,11,18,15,6,2,10,2,4,8,5,11,5,1,5,2,4,3,1,6,8,5,5,3,1,1,4,5,2,9,3,4,11,11,14,3,12,2,6,0,0,15,1,18,5,3,6,6,6]"
和一个标量列:
df$scalar <- 10, .... , 10
我想应用以下公式:
((fromJSON(df$col1) / scalar1) / (fromJSON(df$col2) / scalar2))
我做过这样的事情:
lapply(df$col1, function(i) {fromJSON(i)/scalar1}) /
lapply(df$col2, function(i) {fromJSON(i)/scalar2}
还有其他办法吗?
答案 0 :(得分:2)
我们可以遍历以JSON
格式应用fromJSON
的列,然后使用scalar
将Map
和Reduce
分成两个{ {1}}
vector
使用Reduce(`/`, Map(`/`, lapply(df[c('col1', 'col2')], fromJSON), df[c('scalar1', 'scalar2')]))
中map
的类似方法
purrr