我有两个列表v
和w
,我想再次从矩阵z
创建一个列表M
。我怎么能在R?中做到这一点?
v = list(a = c(1, 5), b = 2, c= 3)
w = list( a= c(2, 10), b = 4, c = 6)
M = as.matrix(unlist( v) * unlist(w))
> M
[,1]
a1 2
a2 50
b 8
c 18
z = list(a = c(2, 50), b = 8, c = 18)
答案 0 :(得分:3)
这样做:
mapply(`*`, v, w)
答案 1 :(得分:2)
也许你想要z <- lapply(1:length(v), function(i) v[[i]]*w[[i]])
?添加names(z) <- names(v)
以保留名称。