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