验证R语言table函数统计未婚男女数量的方法是否正确
确认统计未婚男女数量的代码思路是否正确
我需要统计数据集example.test中未婚(单身)男性(M)和女性(F)的数量,目前使用了以下代码,但不确定思路是否正确,特来确认:
table(example.test$Sex, example.test$Married == 'Y') FALSE TRUE F ## ## M ### ###
说明:用#替换了实际数值,假设'Y'代表已婚(对应结果中的TRUE)、'N'代表未婚(对应结果中的FALSE)。
我的示例数据集如下:
Income Career Age Sex Married 1. 39540 Lawyer 20 F N 2. 45098 Teacher 65 F y 3. 54565 Doctor 45 M y 4. 48356 Teacher 26 M N 5. 68959 Nurse 32 F y
结论
你的思路完全正确,但有一个细节需要修正:
- 注意大小写匹配问题:示例数据中
Married列存在小写的y,而代码中判断的是大写'Y',这会导致部分已婚数据被误判为未婚。建议统一大小写后再判断,比如修改为:
table(example.test$Sex, toupper(example.test$Married) == 'Y')
或者:
table(example.test$Sex, tolower(example.test$Married) == 'y')
修正后,结果里的FALSE列就是你需要的未婚人数:F行对应未婚女性数量,M行对应未婚男性数量。
内容的提问来源于stack exchange,提问作者ellen
相关产品推荐
相关产品推荐

