[英]How can you force inclusion of a level in a table in R?
有沒有辦法強制R的table
函數包括行或列,即使它們從未出現在數據中也是如此? 例如,
data.1 <- c(1, 2, 1, 2, 1, 2, 4)
data.2 <- c(1, 4, 3, 3, 3, 1, 1)
table(data.1, data.2)
退貨
data.2
data.1 1 3 4
1 1 2 0
2 1 1 1
4 1 0 0
行中缺少3個,列中缺少2個,因為它們沒有出現在數據中。
有沒有一種簡單的方法可以強制將其他零行和零列插入正確的位置,而返回以下內容?
data.2
data.1 1 2 3 4
1 1 0 2 0
2 1 0 1 1
3 0 0 0 0
4 1 0 0 0
您需要將向量轉換成factor
S,具有所有的每個向量levels
,你想要在輸出中包含。
levs <- sort(union(data.1, data.2))
table(factor(data.1, levs), factor(data.2, levs))
#
# 1 2 3 4
# 1 1 0 2 0
# 2 1 0 1 1
# 3 0 0 0 0
# 4 1 0 0 0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.