【发布时间】:2015-01-26 16:01:51
【问题描述】:
我有一个矩阵列表,我想将每个矩阵与与列表长度相同的向量乘以不同的因子。 我尝试了以下方法:
lapply(list(mat1, mat2, mat3),"*",c(1,2,3))
但是,这会返回:
list(mat1*c(1,2,3), mat2*c(1,2,3), mat3*c(1,2,3))
而不是我需要的:
list(mat1*1,mat2*2,mat3*3)
有没有人解决这个问题?
【问题讨论】:
-
请将您的数据对象添加到您的问题中(
dput(mat1)、dput(mat2)、...)。 -
可能与 mapply?像
mapply(function(x, y) x * y, lst, vec)这样的东西? (未测试...)