我正在接受Datacamp的数据分析和统计推断。以下是与全球宗教信仰和无神论指数相关的代码,以及美国2012年数据的子集。
load(url("http://s3.amazonaws.com/assets.datacamp.com/course/dasi/atheism.RData"))
us12 = subset(atheism, atheism$nationality == "United States" & atheism$year =="2012")
我的问题是,当我输入
时,为什么会看到其他国家/地区table(us12)
有没有办法可以只对过滤后的数据进行子集化?
感谢。
答案 0 :(得分:3)
由于us12
是data.frame
,其中nationality
和response
列为factors
,包括原始data.frame
的所有级别。
事实上,table(us12)
会向您返还计数,正如您所看到的,与美国不同的国籍的所有计数均为零。
如果这对您有用,您可以使用droplevels
功能删除data.frame
中实际不存在的级别:
> us12dropped=droplevels(us12)
> table(us12dropped)
, , year = 2012
response
nationality atheist non-atheist
United States 50 952