我有 3 个向量(A、B、C),希望将所有向量转换为单个因子 (ABC)。各个向量被二分 (0,1)。问题是,当我运行代码时,1 似乎没有被计算在内,因此总数始终为零。
# Example data
A <- c(1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0)
B <- c(0, 1, 0, 1, 0, 1, 0, 1, 0, , 0, 1)
C <- c(0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0)
A <- factor(ifelse(A == 1, "A", 0))
B <- factor(ifelse(B == 1, "B", 0))
C <- factor(ifelse(C == 1, "C", 0))
通过包 forcats 解决了
ABC_factor <- ftc_c(A, B, C)
我会用类似的东西
factor(c(c("A", "no")[A+1],
c("B", "no")[B+1],
c("C", "no")[C+1]
)
)
[1] no A no A no A no A no A no A B no B no B no B no B no B no C
[26] no no no C no C no C no C C
Levels: A B C no
数据:
A <- c(1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0)
B <- c(0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
C <- c(0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0)