r - 索引列时如何使用向量?
问题描述
所以基本上,我有一个向量:
请注意,泰坦尼克号是参加泰坦尼克号的人的数据框。
femalesurvivors_1 <- thetitanic[(thetitanic$Sex=="female") & (thetitanic$Survived==1) & (thetitanic$PClass=="1st"),]
这显示了一级的女性幸存者。但是,现在我只想要18岁以上的女性幸存者。所以:
我也想索引(thetitanic$Sex>=18)
我一直在尝试某些形式的代码,但我不断收到错误。
x <- thetitanic[(femalesurvivors_1) & (thetitanic$Age>=18)]
错误显示: 1: In Ops.factor(left, right) : '&' 对因子没有意义
我可以在做的时候通过一个向量吗?还是我必须制作一个新的向量并重复代码?
我正在尝试返回 18 岁以上的女性幸存者的价值。
我是菜鸟..任何帮助将不胜感激。谢谢你。
解决方案
您可以创建条件的逻辑向量并sum
接管它。
sum(with(thetitanic,
Survived == 1 & Sex == "female" & Pclass == 1 & Age >= 18), na.rm = TRUE)
使用subset
nrow(subset(thetitanic, Survived == 1 & Sex == "female" & Pclass == 1 & Age >= 18))
或dplyr
使用filter
library(dplyr)
thetitanic %>%
filter(Survived == 1 & Sex == "female" & Pclass == 1 & Age >= 18) %>%
nrow
这将返回 18 岁以上的一等女性幸存者的数量。如果您想要这些条目,请nrow
从filter
和subset
函数中删除。
推荐阅读
- c++ - QuadTree的中序遍历
- jquery - jquery datepicker 排除除周二和周五以外的所有日期,并同时排除选定日期
- javascript - 如何优化 jQuery tag:contains() 选择器?
- python - 如何在 for 循环中强制执行多个 QComboBox 中的任何一个的最小索引?
- postgresql - Docker-compose:容器未运行
- android - Firebase 远程配置重叠条件组
- php - PHP JQuery 表单未插入 SQL Server 数据库
- python - 在 Jupyter Notebook 中消失的情节?
- javascript - 处理 Ajax 响应
- python - 迭代大量行而不会出现内存错误