Bagaimana cara memanggil fungsi yang ditentukan dalam file abc.R di file lain, katakanlah xyz.R?
Pertanyaan tambahannya adalah, bagaimana cara memanggil fungsi yang ditentukan dalam abc.R dari baris perintah / perintah R?
Jawaban:
Anda dapat memanggil source("abc.R")
diikuti oleh source("xyz.R")
(dengan asumsi bahwa kedua file ini ada di direktori kerja Anda saat ini.
Jika abc.R adalah:
fooABC <- function(x) {
k <- x+1
return(k)
}
dan xyz.R adalah:
fooXYZ <- function(x) {
k <- fooABC(x)+1
return(k)
}
maka ini akan berhasil:
> source("abc.R")
> source("xyz.R")
> fooXYZ(3)
[1] 5
>
Bahkan jika ada ketergantungan siklis, ini akan berhasil.
Misalnya jika abc.R adalah ini:
fooABC <- function(x) {
k <- barXYZ(x)+1
return(k)
}
barABC <- function(x){
k <- x+30
return(k)
}
dan xyz.R adalah ini:
fooXYZ <- function(x) {
k <- fooABC(x)+1
return(k)
}
barXYZ <- function(x){
k <- barABC(x)+20
return(k)
}
kemudian,
> source("abc.R")
> source("xyz.R")
> fooXYZ(3)
[1] 55
>
source
satu file / fungsi sekali. Lalu ada di ruang kerja Anda dan Anda dapat menggunakannya kapan saja. Jika Anda mengubahnya, Anda harus mengambilnya kembali. Jika fungsi Anda banyak berubah sejak Anda mengonversi kode, letakkan semuanya dalam satu file dan cukup sumber semuanya setiap saat. Anda juga dapat memiliki file terpisah yang lebih kecil yang 1. mengambil sumber dari koleksi fungsi yang lebih besar dan 2. Menjalankan kasus pengujian Anda. Di R ada banyak cara untuk mengatur alur kerja Anda.