我正在尝试在data.frame中添加一列,并将该新列的输出作为第3列第3列的划分,这是一个示例:
mylist <- list( a=c(0,1,2),b=c(0,2,3),c=c(0,4,5))
返回:
$a
[1] 0 1 2
$b
[1] 0 2 3
$c
[1] 0 4 5
我想回复:
$a
[1] 0 1 2 2
$b
[1] 0 2 3 1.5
$c
[1] 0 4 5 1.25
请帮忙
答案 0 :(得分:1)
我们可以使用list
遍历lapply
,将第3个元素除以第2个元素并与原始vector
lapply(mylist, function(x) c(x, x[3]/x[2]))
答案 1 :(得分:1)
我们可以使用purrr
包。
library(purrr)
map(mylist, ~c(., .[3]/.[2]))
$a
[1] 0 1 2 2
$b
[1] 0.0 2.0 3.0 1.5
$c
[1] 0.00 4.00 5.00 1.25