简体   繁体   中英

Defunct as of rlang 0.3.0 and mutate_impl

I am trying to use the following function but every time I do, I receive the error below. I tried installing an older version of rlang as it works on a different R Studio but I was unable to do that. It seems the error is due to the 0.3.0 version. Any suggestions on how to fix this error would be appreciated.

details2 <-
   details %>%
   mutate(rownames=rownames(.)) %>%
   filter(isdir==FALSE) %>%
   arrange(desc(ctime))

Error in mutate_impl(.data, dots) : 
  Evaluation error: `as_dictionary()` is defunct as of rlang 0.3.0.
Please use `as_data_pronoun()` instead.

To solve this issue within a docker container, I ended up having to use devtools::install_version(..., dep = FALSE) to install an older version of rlang and manually install all dependencies for the packages I needed like dplyr .

Simply installing dplyr will install (or update) to the most recent version of rlang which released 0.3.0 on 2018-10-22 according to CRAN. Although I haven't figured out what changed with rlang and as_dictionary , this is a current workaround.

Although this was a pain, it did work. To find all imports for a particular package you can use as.data.frame(installed.packages()) and filter for the specific package name you are interested in. The column name is Imports .

Edit:
Although I have not tested it myself, another solution I found online is to upgrade dplyr to 0.7.7 .

I think the problem may come from incompatible package versions. You can try with:

update.packages(ask = FALSE, checkBuilt = TRUE)

If it doesn't work, reinstalling all packages the problem may disappear (code from here ):

package_df <- as.data.frame(installed.packages())
package_list <- as.character(package_df$Package)
install.packages(package_list)

Problem happened after installing new version of RStudio-1.2.1114.exe

To solve this problem I just had to install package 'dplyr' again

install.packages("dplyr")  

What worked for me (though to be honest I don't fully understand why):

1) Delete the rlang folder from the computer (on Windows: R/win-library/3.4)
2) install.packages("dplyr")

In the two cases where I encountered this problem, the system was operating on R 3.4 with Windows. It's possible that the R3.4/Windows had something to do with it.

I temporarily solved the problem via downgrading rlang.

require(devtools)
install_version("rlang", version = "x.x.x", repos = "http://cran.us.r-project.org")

xxx: the version you need


I just realize that "dplyr" has fixed the issue after version 0.7.4.

For what it's worth, it worked for me by doing this:

  1. having dplyr version 0.7.8
  2. having rlang version 0.3.0.9000

I have R version 3.4.3 and using Rstudio version 1.1.456.

Try the following command: This will bring rlang to version 0.2.1

Post this you will be able to run the command.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM