[英]Grouping and summarizing data across a dataframe in r
所以我在 r 中有這個 dataframe,例如,數據要么像“向上”要么像“向下”,
df <- data.frame(Var1 = c("up", "down", "up", "down"),
Var2 = c("down", "up", "down", "down"),
Var3 = c("down", "down", "up", "up")
)
df
我想要做的是使用 group_by 將每列設為一個組,然后匯總以獲取每列中上升和下降的計數。
到目前為止我已經想出了這個,
newdf <- lapply(df[1:3], function(x){
group_by(.[[x]])%>%
summarize(n = n())
})
newdf
但不斷收到錯誤。 好像不認識“.”
Error in group_by(.[[x]]) : object '.' not found
有人有建議嗎?
我還使用 tidyverse package,我相信它包括 dyplyr
這是一種創建計算所有變量的表的方法
library(dplyr)
library(tidyr)
df <- data.frame(Var1 = c("up", "down", "up", "down"),
Var2 = c("down", "up", "down", "down"),
Var3 = c("down", "down", "up", "up")
)
df %>%
pivot_longer(cols = everything()) %>%
count(name,value) %>%
pivot_wider(names_from = value,values_from = n,values_fill = 0)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.