Importowanie funkcji i zmiennych R [duplikat]

Nov 19 2020

Używam pakietu z github i funkcje w nim nie są ... połączone. Główny plik ma funkcję, ale aby ta funkcja działała, muszę uruchomić 4 różne pliki (3 pliki mają wiele funkcji, a 1 ma klasę). Czy mamy możliwość zaimportowania całych skryptów (ze wszystkimi funkcjami, klasami, zmiennymi) do mojego głównego pliku, aby pojawiały się w moim środowisku?

na przykład w pliku "foo.R" mam funkcję "food = function (...)", więc robię coś takiego

from foo.R import food

result <- 2*food(a,b,c)

lub

from foo.R import *
result <- 2*foo.food(a,b,c)

jak w Pythonie?

Odpowiedzi

1 ÁlvaroA.Gutiérrez-Vargas Nov 19 2020 at 02:29

Myślę, że powinieneś przyjrzeć się kombinacji here+ source. Zasadniczo możesz wykonać następujące czynności:

library(here)
source(here::here('R', 'file_that_contains_a_lot_of_functions.R'))

W ten sposób będzie można uzyskać wszystkie funkcje z file_that_contains_a_lot_of_functions.Rw GlobalEnviromentułatwiają pracę z nimi.

PS1: 'R'powyższe jest spowodowane tym, że zakładam, że pobrałeś kopię lustrzaną biblioteki z Github i pobierasz funkcje z Rfolderu.

PS2: założono również, że wygenerowałeś projekt na poziomie głównego folderu pakietu. Robię również, aby wygenerować dodatkowy folder, w my_folderktórym przechowuję wszystko, co utworzę, aby nie zakłócać przepływu pracy oryginalnego pakietu.

alex_danielssen Nov 19 2020 at 02:26

użyj polecenia source () i umieść plik do uruchomienia - wtedy będziesz miał dostęp do wszystkich obiektów w nim zawartych.

źródło („ścieżka / do / Twojego / pliku.R”)