Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在具有多个条件的R中子集数据帧?_R_Dplyr_Filtering_Subset - Fatal编程技术网

如何在具有多个条件的R中子集数据帧?

如何在具有多个条件的R中子集数据帧?,r,dplyr,filtering,subset,R,Dplyr,Filtering,Subset,需要在预安装的数据集gapminder中找到2004年后俄罗斯的平均生育率 library(dplyr) library(dslabs) df1 <- data.frame(gapminder) a <- df1@year >= 2004 df1[df1$fertility %in% c("Russia", a), ] 库(dplyr) 图书馆(dslabs) df1您可以使用$(而不是@)引用该列,国家/地区列中也有“俄罗斯”,但您正在签入生育率

需要在预安装的数据集gapminder中找到2004年后俄罗斯的平均生育率

library(dplyr)
library(dslabs)

df1 <- data.frame(gapminder)


a <- df1@year >= 2004
df1[df1$fertility %in% c("Russia", a), ]
库(dplyr)
图书馆(dslabs)

df1您可以使用
$
(而不是
@
)引用该列,
国家/地区
列中也有
“俄罗斯”
,但您正在签入
生育率

尝试:

不使用
过滤器

df1 %>%
  summarise(avg_fertility = mean(fertility[country == 'Russia' & 
                                           year >= 2004], na.rm = TRUE))
在R基中:

mean(subset(df1, country == 'Russia' & year >= 2004)$fertility, na.rm = TRUE)

我猜你的意思是
a=2004;df1[df1$country%在%“俄罗斯”&a,]
非常感谢,我在任何地方都找不到精确的指令,我自己挣扎了好几个小时
mean(subset(df1, country == 'Russia' & year >= 2004)$fertility, na.rm = TRUE)