2
我的數據是這樣的:流行了觀察/行
library(tidyverse)
set.seed(1)
df <- tibble(
id = c("cat", "cat", "mouse", "dog", "fish", "fish", "fish"),
value = rnorm(7, 100, sd = 50)
)
如何可能我在招魚「蹦出來」的fish
頂部的值,作爲一個新的數據幀,並同時去除它來自當前的數據框?
該作品(但它似乎不是所有的優雅):
df_store <- df %>%
filter(id == "fish") %>%
top_n(1)
df <- anti_join(df, df_store)
有沒有更好的辦法?
僅供參考,在基礎R,你可以做到這一點使用'split'使用'split(df,with(df,id ==「fish」&value == max(value [id ==「fish」]))創建'data.frame'列表' –