dplyr 替换为 R 中的位置

sta*_*tor 0 r dplyr

第三行的mtcars$mpg值为22.8

library(tidyverse)
mtcars$mpg[[3]]
Run Code Online (Sandbox Code Playgroud)

我继续将其替换为如下所示22.8的值5,555。它可以工作,但不能像我命令我的电脑那样在第三行!相反,该值显示在该列的第 22 行mtcars$mpg

mtreplace <- mtcars %>% mutate(mpg = replace(mpg, mpg[[3]], 5555))
mtreplace
mtreplace$mpg[[3]]
mtreplace$mpg[[22]]
Run Code Online (Sandbox Code Playgroud)

如何让这种变化恰好发生在 的第三行mtcars$mpg?出了什么问题?

G. *_*eck 5

代码应该是

mtcars %>% mutate(mpg = replace(mpg, 3, 5555))
Run Code Online (Sandbox Code Playgroud)