R表xtab中:列联表上的排除条件因素

问题描述:

想象我想创建一个列联表的移动和性别为具有以下数据集:R表xtab中:列联表上的排除条件因素

df<-data.frame(read.table(header = TRUE, text = 
"Age Gender Mobile 
13 Male 1 
14 Female 1 
18 Female 1 
13 Male 1 
13 Female 1 
14 Female 0 
16 Male 1 
16 Female 0 
16 Male 0 
20 Male 0 
14 Male 0 
13 Female 0 
25 Male 1 
13 Female 0 
24 Female 0")) 

我会去了解它,如下所示:

df$Gender<-factor(df$Gender) 
df$Mobile<-factor(df$Mobile) 
prop.table(xtabs(~Mobile+Gender, df)) 

它工作正常。现在,想象一下,我想为18岁以上的样本子集编制一个适合性别和移动性的表格。您如何做到这一点?我尝试了以下无济于事:

prop.table(xtabs(~Mobile+Gender, df[df$Age>18])) 

prop.table(xtabs(~Mobile+Gender[df$Age>18], df)) 

prop.table(xtabs(~Mobile+Gender, df))[df$Age>18] 

任何想法?谢谢!

我们需要subset行为Age > 18,如果我们需要在子集化后删除未使用的级别,使用droplevels,得到xtabs并转换为比例表。

prop.table(xtabs(~Mobile+Gender, droplevels(df[df$Age>18,]))) 
+1

!而且你是对的,伙计!感谢修正以及快速回复!干杯 – DomB