我有500个参数(数字):a1, a2, a3, ... a500
,
data.frame中有500列:C1, C2, ..., C500
我怎样才能得到总和:R中的a1*C1+a2*C2+....a500*C500
,矩阵来自?
由于
答案 0 :(得分:1)
如果v1
是包含参数值的向量,d1
是data.frame
v1 %*% t(d1)
# [,1] [,2] [,3] [,4]
#[1,] 180 202 160 183
v1[1]*d1[,1]+v1[2]*d1[,2]+v1[3]*d1[,3]+v1[4]*d1[,4]+v1[5]*d1[,5]
#[1] 180 202 160 183
如果您有a1
,a2
等作为对象名称,则可以使用mget
作为@flodel的注释,如果名称遵循特定模式,即来自{{1} } a1
a500
lst <- mget(paste0("a", 1:5))
v1 <- unlist(lst)
v1
# a1 a2 a3 a4 a5
# 1 2 3 4 5