R dplyr select()不工作,并且没有错误代码

R dplyr select()不工作,并且没有错误代码,r,dplyr,R,Dplyr,我试图从dslabs gapminder数据集创建一个表格,只显示2012年非洲国家的预期寿命和生育率。我的代码的第一部分是有效的,但是在选择之后它就停止工作了,我甚至没有得到一个错误代码。我相信这可能是一件非常琐碎的事情,但我对这方面还是新手。有人能帮我弄清楚为什么这个代码不起作用吗 library(dplyr) library(dslabs) data(gapminder) df <- gapminder %>% filter(., continent == "Afri

我试图从dslabs gapminder数据集创建一个表格,只显示2012年非洲国家的预期寿命和生育率。我的代码的第一部分是有效的,但是在选择之后它就停止工作了,我甚至没有得到一个错误代码。我相信这可能是一件非常琐碎的事情,但我对这方面还是新手。有人能帮我弄清楚为什么这个代码不起作用吗

library(dplyr)
library(dslabs)
data(gapminder)
df <- gapminder %>% filter(., continent == "Africa" & year == as.factor(2012)) %>% select(., 'fertility' <= 3 & life_expectancy >= 70)

根据代码,所有逻辑表达式都应该放在过滤器内部。如果函数被另一个包中的同一函数屏蔽,请在仅加载dplyr的新R会话上执行此操作,或者使用::指定保存该函数的包源,如注释中所示

library(dplyr)
gapminder %>% 
    dplyr::filter(continent == "Africa",
           year == 2012, 
           fertility <=3,
           life_expectancy >= 70) 

select用于选择列,而不是行-filter或slice用于选择列

我认为您的select语句不正确。这不是一个filter语句吗?我不认为这是个问题,但是使用dplyr::filter而不是filter总是值得的,因为filter经常会与stats发生冲突:filter@ReeNadeau这很有趣。你能展示你的软件包版本“dplyr”吗?你能在新的R会话上运行它吗?我重启了R会话,它成功了:谢谢!
#country year infant_mortality life_expectancy fertility population gdp continent          region
#1    Algeria 2012             22.4            76.2      2.82   37439427  NA    Africa Northern Africa
#2 Cape Verde 2012             22.4            71.9      2.33     500870  NA    Africa  Western Africa
#3      Egypt 2012             22.6            70.5      2.81   85660902  NA    Africa Northern Africa
#4      Libya 2012             12.9            75.5      2.41    6283403  NA    Africa Northern Africa
#5  Mauritius 2012             12.8            74.1      1.50    1258335  NA    Africa  Eastern Africa
#6    Morocco 2012             26.4            74.1      2.71   32984190  NA    Africa Northern Africa
#7 Seychelles 2012             12.2            73.7      2.21      94524  NA    Africa  Eastern Africa
#8    Tunisia 2012             13.6            77.4      2.02   10881450  NA    Africa Northern Africa