我的人口普查数据包含4列(年龄,广泛年龄,性别,种族)和每个人的多行。与此分开,我有不同年龄组和种族的就业类型数据。从数据集中我知道每个就业类型中的人数"年龄"小组,但只知道人们的种族和#34;广泛时代"基。
例如,我知道23名年龄在16-19岁的男性,53名年龄在20-21岁的男性,42名年龄在22-24岁的男性从事兼职工作,但我只知道#34;广泛时代的种族和#34 ; 16-24岁的一组,我知道38名男性是白人,依此类推。
我是R的新手,并设法为if" gender"做了IF语句。 &安培;如果"年龄"然后他们在兼职工作,但填充所有行。我试图找到一种方法,我可以根据我从人口普查数据中得知的情况来指定分布,因此第五栏按照"年龄"年龄"填充正确数量的兼职员工。小组,但对于"广泛时代"在每个种族群体中随机分配。
我认为我需要创建一个函数,但是对于合并分发部分有点困惑。任何建议都会收到很多!
示例数据:
Age Broad Age Gender Ethnicity
16-17 16-24 Male White
16-17 16-24 Male White
16-17 16-24 Male Asian
16-17 16-24 Male Asian
16-17 16-24 Male Asian
18-19 16-24 Male White
18-19 16-24 Male White
18-19 16-24 Male White
18-19 16-24 Male White
18-19 16-24 Male White
外部数据示例(按年龄分类):
Age Part-time Full-time S-E: Part-time S-E: Full-time Unemployed Student
16 to 19 23.20% 5.52% 0.00% 0.55% 11.60% 58.56%
20 to 21 11.33% 1.97% 1.48% 0.00% 6.40% 78.82%
22 to 24 13.30% 18.09% 1.06% 2.13% 9.57% 54.26%
外部数据示例(按种族和广泛年龄划分的就业类型): 对于男性16-24:
Employment Type White Mixed/Multiple Asian African Caribbean Other
Part-time 93.27% 0.90% 4.48% 0% 0.45% 0.90%
Full-time 94.64% 0.89% 5.0% 0% 0.86% 1.79%
根据外部数据的百分比,我需要什么:
Age Broad Age Gender Ethnicity Employment Type
16-17 16-24 Male White Student
16-17 16-24 Male White Part-time
16-17 16-24 Male Asian Student
16-17 16-24 Male Asian Student
16-17 16-24 Male Asian Full-time
18-19 16-24 Male White Student
18-19 16-24 Male White Student
18-19 16-24 Male White Unemployed
18-19 16-24 Male White S-E:full-time
18-19 16-24 Male White Student
根据我从两个外部来源得知的分布,是否有办法填补第5栏(就业类型)?
答案 0 :(得分:0)
我会添加一个新的专栏,将Age类分为Broad Age类,以便进行某些分析,无论如何都需要降低年龄分辨率,因为无法为Broad Age组增加它。所以Age' 16-17' 18-19',' 19-20',' 21-22',' 22-23'会在新列中添加标记' 16-24'与广泛年龄组相当。然后你可以使用merge来组合它们,例如
merge(dataset1,dataset2,by=c("new_age_group"),all.x=TRUE,incomparables=NA)
预先创建新列,使用类似
的内容dataset1$new_age_group[dataset1$Age == '19-20'] <- '16-24'