我想计算一个变量的TRUE
的数量,用于另一个变量的每个类别。或者更准确地说,每个类别的TRUE
的平均数量。之后,我想创建一个向量。
当变量(如Var2
)同时包含TRUE
和FALSE
值时,我使用的代码可以正常工作。然而,当像Var3
这样的变量只包含FALSE
时,我的代码创建了一个值为NULL的向量。不过,我想它创建一个向量的值为0的每个类别。
有什么想法吗?
下面是一个示例:
df <- data.frame(
Var1 = c("A", "B", "A", "B", "A", "C"),
Var2 = c(TRUE, FALSE, TRUE, FALSE, TRUE, TRUE),
Var3 = c(FALSE, FALSE, FALSE, FALSE, FALSE, FALSE)
)
#creating some data
count1 = as.vector(tapply(df$Var1, df$Var2, table)$'TRUE')/nrow(df)
#this works fine
count2 = as.vector(tapply(df$Var1, df$Var3, table)$'TRUE')/nrow(df)
#this not. It creates only a NULL-vector
count1
是inteded,但count2
是NULL向量。
谢谢你,谢谢
1条答案
按热度按时间prdp8dxp1#
下面是如何在基R中动态构建它,而不必显式命名变量。