在包括不同城市、年份和慷慨程度的数据中,需要创建一个表,列出五年数据中平均慷慨程度得分最高的15个城市。我该怎么做?
Year Cities generosity economic culture hp
2000 Seoul 1.33358 0.35637 1.30923 0.65124
2001 Mexico City 1.22857 0.07785 1.22393 0.41319
2002 Guangzhou 0.95578 0.10583 1.23788 0.63376
2003 Beijing 1.33723 0.18676 1.29704 0.62433
2004 Cairo 1.02054 0.21312 0.91451 0.48181
2005 New York 1.39451 0.1589 1.24711 0.54604
2006 Kolkata 0.98124 0.17521 1.23287 0.49049
2007 Moscow 1.56391 0.37798 1.21963 0.61583
2008 Bangkok 1.33596 0.28703 1.36948 0.61777
2009 Buenos Aires 1.30782 0.2254 1.28566 0.5845
2010 Shenzhen 1.42727 0.38583 1.12575 0.64157
2011 Dhaka 1.26637 0.32067 1.28548 0.59625
2012 Lagos 1.04424 0.11069 1.25596 0.42908
2013 Istanbul 1.52186 0.4921 1.02 0.54252
2014 Osaka 1.06353 0.0927 1.1985 0.5421
2015 Karachi 1.32792 0.21843 1.29937 0.61477
在基本R中,您可以执行以下操作:
df1 <- aggregate(generosity~Cities, df, mean, na.rm = TRUE)
result <- head(df1[order(df1$generosity), ], 15)
下面是一个使用{dplyr}的实现
编辑:我以为你指的是15年数据中排名前五的城市。
library(dplyr, warn.conflicts = FALSE)
dat <- tribble(~Year,~Cities,~generosity,~economic,~culture,~hp,
2000,"Seoul",1.33358,0.35637,1.30923,0.65124,2001,"Mexico City",1.22857,0.07785,1.22393,0.41319,2002,"Guangzhou",0.95578,0.10583,1.23788,0.63376,2003,"Beijing",1.33723,0.18676,1.29704,0.62433,2004,"Cairo",1.02054,0.21312,0.91451,0.48181,2005,"New York",1.39451,0.1589,1.24711,0.54604,2006,"Kolkata",0.98124,0.17521,1.23287,0.49049,2007,"Moscow",1.56391,0.37798,1.21963,0.61583,2008,"Bangkok",1.33596,0.28703,1.36948,0.61777,2009,"Buenos Aires",1.30782,0.2254,1.28566,0.5845,2010,"Shenzhen",1.42727,0.38583,1.12575,0.64157,2011,"Dhaka",1.26637,0.32067,1.28548,0.59625,2012,"Lagos",1.04424,0.11069,1.25596,0.42908,2013,"Istanbul",1.52186,0.4921,1.02,0.54252,2014,"Osaka",1.06353,0.0927,1.1985,0.5421,2015,"Karachi",1.32792,0.21843,1.29937,0.61477)
dat %>%
group_by(Cities) %>%
summarize(avg_generosity = mean(generosity)) %>%
arrange(desc(avg_generosity)) %>%
head(5)
#> `summarise()` ungrouping output (override with `.groups` argument)
#> # A tibble: 5 x 2
#> Cities avg_generosity
#> <chr> <dbl>
#> 1 Moscow 1.56
#> 2 Istanbul 1.52
#> 3 Shenzhen 1.43
#> 4 New York 1.39
#> 5 Beijing 1.34
由reprex包(v0.3.0(创建于2020-12-03