abc.Rファイルで定義された関数を別のファイル、たとえばxyz.Rで呼び出すにはどうすればよいですか?
補足的な質問は、Rプロンプト/コマンドラインからabc.Rで定義された関数を呼び出すにはどうすればよいですか?
回答:
あなたは呼び出すことができますsource("abc.R")
が続くsource("xyz.R")
(これらのファイルの両方があなたの現在の作業ディレクトリにあると仮定します。
abc.Rが次の場合:
fooABC <- function(x) {
k <- x+1
return(k)
}
そしてxyz.Rは:
fooXYZ <- function(x) {
k <- fooABC(x)+1
return(k)
}
その後、これは動作します:
> source("abc.R")
> source("xyz.R")
> fooXYZ(3)
[1] 5
>
循環的な依存関係がある場合でも、これは機能します。
たとえば、abc.Rが次の場合:
fooABC <- function(x) {
k <- barXYZ(x)+1
return(k)
}
barABC <- function(x){
k <- x+30
return(k)
}
そしてxyz.Rはこれです:
fooXYZ <- function(x) {
k <- fooABC(x)+1
return(k)
}
barXYZ <- function(x){
k <- barABC(x)+20
return(k)
}
その後、
> source("abc.R")
> source("xyz.R")
> fooXYZ(3)
[1] 55
>
source
ファイル/関数は一度だけです。その後、それはワークスペースにあり、いつでも使用できます。変更した場合は、再調達する必要があります。コードを変換してから関数が大幅に変更される場合は、すべてを1つのファイルに入れて、毎回すべてをソースするだけです。また、1。機能のより大きなコレクションを調達し、2。テストケースを実行する別の小さなファイルを使用することもできます。Rには、ワークフローを調整する方法がたくさんあります。