R:使用slice(排列)选择前n行

时间:2018-11-19 19:51:05

标签: r class dataframe dplyr tidyverse

我正在尝试使用R从数据框中选择前6行(按值)

top6 <- d %>%
filter(ReportingYear==2016) %>%
arrange(desc(total.emission)) %>%
slice(1:6)

,但它返回d中的所有行。 直到我意识到在管道开始处的对象d令我有些奇怪之前,我无法理解这种行为。

> class(T4.d)
[1] "grouped_df" "tbl_df"     "tbl"        "data.frame"

对象d是使用

创建的
  d <- facilities %>%
  left_join(releases) %>%  #get activity id
  filter(PollutantName == "Methane (CH4)" & ActivityCode=="5.(d)") %>% 
  #filter for pollutant and activity
  group_by(CountryName,ReportingYear) %>% #group
  summarise(total.emission = sum(TotalQuantity)) #summarise

使用

> class(facilities)
[1] "data.frame"

鉴于设施是一个数据帧,我也期望d的类也是数据帧。在我看来,d是不同的类。有人可以帮忙吗?

谢谢

0 个答案:

没有答案