使用RStudio开发R项目时遇到问题.我创建了一个对象,然后意识到,我想给它另一个名字.然后,我必须手动更改名称,这在大型项目中很烦人并经常导致错误,因为我很容易监督一行.replace
all
RStudio 的功能与我试图替换的名称不完全匹配,因为它只在一个文件中这样做,它也不仅仅考虑变量的引用参见示例代码:
f <- function(a){ b <- a return(a+b) } a <- 5; a <- a + f(1)
在该示例中,我a
只想在函数内部重命名.我必须这么做三次,同时replace
all
会在函数之外弄乱我的代码.我不想编辑它a
.即Visual Studio可以使用热键重命名变量:Ctrl
+ .
.然后,Visual Studio在整个项目中重命名变量及其引用,而不编辑没有引用已编辑变量的同名变量.我无法在RStudio中找到类似的选项.有同等的吗?
RStudio IDE v1.0包含一个名为"在范围内重命名"的功能,旨在实现此目的:
此功能可以轻松重命名变量的所有实例.该工具具有上下文感知; 改变
m
以m1
不会改变mtcars
对m1tcars
.
我找不到该功能的文档.当我将光标放在d
(要替换的变量名称)的第一个实例上,然后选择Code
- > 时,动画GIF的示例可以正常工作Rename in Scope
.但是,当我尝试相同的步骤但从第二个实例开始时,它不起作用.显然你需要从分配变量的地方开始?
## Example from animated GIF library(dplyr) library(magrittr) library(ggplot2) d <- mtcars %>% ## Instance 1 filter(cyl > 4) %>% select(hp, mpg) ggplot(data = d, aes(x=hp, y=mpg)) + ## Instance 2 geom_point() + geom_smooth()
在实践中,似乎仍然存在阻止该功能工作的错误.例如,除非删除标头,否则下面的示例不起作用.
## Header #### example <- 1:10 example[1]