第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何選擇dplyr組中具有最大值的行?

如何選擇dplyr組中具有最大值的行?

jeck貓 2019-06-26 13:44:22
如何選擇dplyr組中具有最大值的行?我想用dplyr在每個(gè)組中選擇一個(gè)具有最大值的行。首先,我生成一些隨機(jī)數(shù)據(jù)來(lái)顯示我的問(wèn)題。set.seed(1)df <- expand.grid(list(A = 1:5, B = 1:5, C = 1:5))df$value <- runif(nrow(df))在plyr中,我可以使用自定義函數(shù)來(lái)選擇此行。library(plyr)ddply(df, .(A, B), function(x) x[which.max(x$value),])在dplyr中,我使用此代碼獲取最大值,但不是最大值行(本例中為C列)。library(dplyr)df %>% group_by(A, B) %>%     summarise(max = max(value))我怎樣才能做到這一點(diǎn)?謝謝你的建議。sessionInfo()R version 3.1.0 (2014-04-10)Platform: x86_64-w64-mingw32/x64 (64-bit)locale:[1] LC_COLLATE=English_Australia.1252  LC_CTYPE=English_Australia.1252    [3] LC_MONETARY=English_Australia.1252 LC_NUMERIC=C                       [5] LC_TIME=English_Australia.1252     attached base packages:[1] stats     graphics  grDevices utils     datasets  methods   base      other attached packages:[1] dplyr_0.2  plyr_1.8.1 loaded via a namespace (and not attached):[1] assertthat_0.1.0.99 parallel_3.1.0      Rcpp_0.11.1         [4] tools_3.1.0
查看完整描述

3 回答

?
慕絲7291255

TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊

試試這個(gè):

result <- df %>% 
             group_by(A, B) %>%
             filter(value == max(value)) %>%
             arrange(A,B,C)

似乎奏效了:

identical(
  as.data.frame(result),
  ddply(df, .(A, B), function(x) x[which.max(x$value),]))#[1] TRUE

正如@docendo在評(píng)論中指出的,slice如果您嚴(yán)格地只想每組1行,請(qǐng)按下面的@RoyalITS回答,這里可能會(huì)優(yōu)先考慮。如果存在具有相同最大值的多行,此答案將返回多行。


查看完整回答
反對(duì) 回復(fù) 2019-06-26
  • 3 回答
  • 0 關(guān)注
  • 1396 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)