Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
619 views
in Technique[技术] by (71.8m points)

r - dplyr row_number Error in rank

I am trying to spread the corr column in a data frame wide using dplyr, but row_number keep failing with

> o<- out %>% group_by(site) %>% mutate(row = paste0("corr", row_number()))
Error in rank(x, ties.method = "first", na.last = "keep") : 
  argument "x" is missing, with no default

>dput(out)
structure(list(site = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("2001", "2002", 
"2003", "2004", "2005", "2006", "2007", "2008", "2009", "2010", 
"2011", "2012", "2013", "2014", "2015", "2016", "2017", "2020", 
"2021", "2022", "2102", "2107", "2108"), class = "factor"), corr = c(1, 
0.96999258460714, 0.940002658241897, 0.912152752891952, 0.884318687047626, 
0.857969509223287, 0.832630705318952, 0.807620983310881, 0.783158970946845, 
1, 0.967337226340769, 0.930786616932812, 0.893007333276278, 0.855745958730318, 
0.819162237318344, 0.784067927740006)), .Names = c("site", "corr"
), row.names = c(NA, 16L), class = "data.frame")
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You have loaded plyr after loading dplyr. This overwrites dplyr::mutate with plyr::mutate (which is stated in a warning message). To remedy this issue, either load plyr first and then load dplyr, or explicitly reference dplyr in the mutate call:

out %>% group_by(site) %>% dplyr::mutate(row = paste0("corr", row_number()))

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...