Як мені викликати функції, визначені у файлі abc.R, в іншому файлі, скажімо xyz.R?
Додаткове запитання полягає в тому, як мені викликати функції, визначені в abc.R, із рядка підказки / командного рядка 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. створює більшу колекцію функцій і 2. Запускає тестові кейси. У R існує безліч способів організувати робочий процес.