簡體   English   中英

在 R 中熔化列時求和

[英]Sum While melting columns in R

有沒有辦法融化 2 列並將總和作為 value 。 例如

df <- data.frame(A = c("x", "y", "z"), B = c(1, 2, 3), Cat1 = c(1, 4, 3), New2 = c(4, 4, 4))

預期產出

New_Col  Sum
Cat1      8
New2      12

或者在選擇感興趣的列后使用帶有colSumsbase R ,然后將命名向量轉換為帶有stack的 data.frame

stack(colSums(df[c("Cat1", "New2")]))[2:1]
   ind values
1 Cat1      8
2 New2     12

當然

df %>% 
    summarise(across(starts_with('Cat'), sum)) %>% 
    pivot_longer(everything(), names_to = 'New_Col', values_to = 'Sum')
# A tibble: 2 × 2
  New_Col   Sum
  <chr>   <dbl>
1 Cat1        8
2 Cat2       12

暫無
暫無

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

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