簡體   English   中英

在 R 中總結具有多個功能的數據幀?

[英]Summarizing a dataframe in R with multiple functions in place?

我是 R 新手,並試圖總結具有多個函數的數據框,我希望結果出現在同一列中,而不是每個函數的單獨列中。 例如,我的數據集看起來像這樣

data =  
  A  B
  ----
  1  2
  2  2
  3  2
  4  2

我調用summarize_all(data, c(min, max))數據幀變成

a_fn1 b_fn1 a_fn2 b_fn2
    1     2     4     2

我怎樣才能使 summarise_all 的結果變成這樣:

  A  B
  ----
  1  2
  4  2

謝謝

這是否有效:

library(dplyr)
bind_rows(apply(data,2,min),apply(data,2,max))
# A tibble: 2 x 2
      A     B
  <dbl> <dbl>
1     1     2
2     4     2

這是一個帶有transpose的選項

library(dplyr)
library(tidyr)
pivot_longer(df1, cols = everything()) %>% 
    group_by(name) %>% 
    summarise(min = min(value), max = max(value)) %>% 
    data.table::transpose(., make.names = 'name')
  A B
1 1 2
2 4 2

數據

df1 <- structure(list(A = 1:4, B = c(2L, 2L, 2L, 2L)),
 class = "data.frame", row.names = c(NA, 
-4L))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM