RStudioを使用してRプロジェクトを開発するときに問題があります。オブジェクトを作成し、後で別の名前を付けたいことを認識します。次に、名前を手動で変更する必要がありますが、1つの行を簡単に監視するため、大規模なプロジェクトでは煩わしく、多くの場合エラーが発生します。 RStudioのreplace
all
関数は、置換しようとしている名前と完全には一致しません。1つのファイルでのみ一致するため、変数の参照のみを考慮しませんサンプルコードを参照してください。
f <- function(a){
b <- a
return(a+b)
}
a <- 5;
a <- a + f(1)
そのサンプルでは、関数内でa
onlyの名前を変更したいと思います。 replace
all
はコードを台無しにしますoutside関数。 a
を編集したくありません。つまりVisual Studioには、ホットキーを使用して変数の名前を変更するオプションがあります:Ctrl
+ .
。次に、Visual Studioは、プロジェクト全体で変数とその参照の名前を変更します。without編集された変数への参照を持たない同じ名前の変数を編集します。 RStudioでそのようなオプションを見つけることができませんでした。同等のものはありますか?
RStudio IDE v1. には、これを行うことを目的とした「スコープ内の名前変更」という機能が含まれています。
この機能により、変数のすべてのインスタンスの名前を簡単に変更できます。このツールはコンテキストに対応しています。
m
をm1
に変更しても、mtcars
はm1tcars
に変更されません。
機能のドキュメントが見つかりません。アニメーションGIFの例は、d
(置換する変数名)の最初のインスタンスにカーソルを置き、Code
-> Rename in Scope
を選択すると機能します。ただし、同じ手順を試して2番目のインスタンスから開始すると、機能しません。だから明らかに、変数が割り当てられている場所から開始する必要がありますか?
## 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]