[英]dplyr, group by and mutate - wrong result size
這是我的示例:
col_1 <- c('a','a','a','b','b')
col_4 <- c('h','h','k','t','t')
col_2 <- c('2015-10-10','2016-10-10','2015-10-10','2016-10-10','2016-10-10')
col_3 <- c(1,2,3,445,56)
test_df <- data.frame(col_1,col_2, col_3, col_4)
df_result <- test_df %>% group_by(.dots = c('col_1', 'col_4')) %>% mutate(result_col = max(col_3))
它產生以下錯誤信息:
Error in mutate_impl(.data, dots) :
wrong result size (2), expected 5 or 1
您能幫我了解我做錯了什么嗎?
用這個:
df_result <- test_df %>% group_by(col_1, col_4) %>% mutate(result_col = max(col_3))
如果出於某種原因要傳遞帶引號的列名,則必須使用group_by_
而不是group_by
。 注意_
在函數末尾。
您可以類似的方式使用所有dplyr
動詞。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.