示例:
x <- c( 1, NA, 0, 1)
y <- c(NA, NA, 0, 1)
table(x,y, useNA="always") # --->
# y
# x 0 1 <NA>
# 0 1 0 0
# 1 0 1 1
# <NA> 0 0 1
我的问题是:
a <- c(NA, NA, NA, NA)
b <- c(1, 1, 1, 1)
table(a, b, useNA="always") ## --> It is 1X2 matrix.
# b
# a 1 <NA>
# <NA> 4 0
我想要一张带有 的 3X3 表相同的列名、行名和维度 如上面的例子..然后我将为表应用 chisq.test 。
非常感谢您的回答!
最佳答案
您可以通过转换 a
来实现这一点。和 b
成相同水平的因素。这是有效的,因为因子向量会跟踪其元素可能采用的所有可能值(即级别),即使它们实际上仅包含这些值的一个子集。
a <- c(NA, NA, NA, NA)
b <- c(1, 1, 1, 1)
levs <- c(0, 1)
table(a = factor(a, levels = levs),
b = factor(b, levels = levs),
useNA = "always")
# b
# a 0 1 <NA>
# 0 0 0 0
# 1 0 0 0
# <NA> 0 4 0
关于r - 如何在 R 中使用两个变量创建 3 x 3 列联表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12806491/