我有一个犯罪数据集,其中变量很少,如 (ID,Year,Date,Arrest) ,现在我试图获取特定年份中逮捕的比例,例如多年来(2001,2010,2015)我如何计算通过使用表函数吗?
我尝试使用下面的代码,但它没有给出像样的结果:
prop.table(table(CRDATA$Year,CRDATA$Arrest))
and
prop.test(table(CRDATA$Year,CRDATA$Arrest))
注意:数据集名称为 CRDATA,Year 为 Date 类型,Arrest 为 Logi 数据类型
以下是数据集的一部分
ID Date Location Arrest Area Year
8951354 12/31/12 23:15 STREET FALSE 69 2012
8951141 12/31/12 22:00 STREET FALSE 24 2012
8952745 12/31/12 22:00 YARD FALSE 11 2012
8952223 12/31/12 22:00 STREET FALSE 67 2012
8951608 12/31/12 21:30 STREET FALSE 35 2012
8950793 12/31/12 20:30 STREET TRUE 19 2012
8950760 12/31/12 20:10 STREET FALSE 48 2012
8951611 12/31/12 20:00 STREET FALSE 40 2012
8951802 12/31/12 19:00 STREET TRUE 29 2012
您需要指定您想要的内容(总计、行、列):
set.seed(123)
dat=data.frame(Year=rep(2001:2010,10),Var=rnorm(100,200,50)>198)
prop.table(table(dat$Year,dat$Var)) #% of total
FALSE TRUE
2001 0.04 0.06
2002 0.06 0.04
2003 0.05 0.05
2004 0.04 0.06
2005 0.06 0.04
2006 0.03 0.07
2007 0.03 0.07
2008 0.05 0.05
2009 0.05 0.05
2010 0.06 0.04
prop.table(table(dat$Year,dat$Var),1) #% rows
FALSE TRUE
2001 0.4 0.6
2002 0.6 0.4
2003 0.5 0.5
2004 0.4 0.6
2005 0.6 0.4
2006 0.3 0.7
2007 0.3 0.7
2008 0.5 0.5
2009 0.5 0.5
2010 0.6 0.4
prop.table(table(dat$Year,dat$Var),2) #% columns
FALSE TRUE
2001 0.08510638 0.11320755
2002 0.12765957 0.07547170
2003 0.10638298 0.09433962
2004 0.08510638 0.11320755
2005 0.12765957 0.07547170
2006 0.06382979 0.13207547
2007 0.06382979 0.13207547
2008 0.10638298 0.09433962
2009 0.10638298 0.09433962
2010 0.12765957 0.07547170
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)