R-使用数据框中的列值查找矩阵名称并汇总矩阵

R-使用数据框中的列值查找矩阵名称并汇总矩阵,r,matrix,global,R,Matrix,Global,我正在尝试向现有数据帧添加一个新列,该数据帧显示二进制矩阵中的一个数。现有数据框中的一列具有矩阵名称,我正在尝试查找其计数/总和 比如说, r <- 10 c <- 10 MatA <- matrix(sample(0:1,r*c, replace=TRUE),r,c) MatB <- matrix(sample(0:1,r*c, replace=TRUE),r,c) MatC <- matrix(sample(0:1,r*c, replace=TRUE),r,c)

我正在尝试向现有数据帧添加一个新列,该数据帧显示二进制矩阵中的一个数。现有数据框中的一列具有矩阵名称,我正在尝试查找其计数/总和

比如说,

r <- 10
c <- 10
MatA <- matrix(sample(0:1,r*c, replace=TRUE),r,c)
MatB <- matrix(sample(0:1,r*c, replace=TRUE),r,c)
MatC <- matrix(sample(0:1,r*c, replace=TRUE),r,c)

mat <- c("MatA","MatB","MatC")
size <- c(4,6,10)
df <- data.frame(mat,size)

r使用
get
通过字符串引用变量

set.seed(7)
df$binary <- lapply(mat, function(x) sum(get(x)))
set.seed(7)

df$binary使用
get
通过字符串引用变量

set.seed(7)
df$binary <- lapply(mat, function(x) sum(get(x)))
set.seed(7)

df$binary谢谢,我试图使用
lappy
而不使用
get
引用。它工作得很好。谢谢,我试图使用
lappy
而不使用
get
参考。它工作得很好。
df <- data.frame(mat, size, stringsAsFactors = FALSE)
df$binary <- lapply(df$mat, function(x) sum(get(x)))

> df
   mat size binary
1 MatA    4     47
2 MatB    6     58
3 MatC   10     54