Finální tvorba R balíku
1. R CMD
S pomocí funkce package.skeleton()vytvoříme v konzole R základní strukturu balíku (základní adresář se vytvoří v pracovním adresáři, pokud nezadáme jinak). Jako argument musíme uvést název balíku ("operace") a také seznam názvů funkcí jako vektor znakových řetězců:
> package.skeleton(name="operace", list=c("mocnina","soucet","rozdil","podil"))
Creating directories ...
Creating DESCRIPTION ...
Creating NAMESPACE ...
Creating Read-and-delete-me ...
Saving functions and data ...
Making help files ...
Done.
Further steps are described in './operace/Read-and-delete-me'.
Následuje ruční úprava jednotlivých souborů, doplnění nápovědy, příkladů. Vše v textovém editoru (nejlépe co nejjednodušším bez formátování, tedy ne MS WORD!). Tento krok není nutný, balík vytvoříme i bez dalších úprav, ale bude mu chybět nápověda a podobně.
Když máme strukturu připravenou, spustíme command okno ve Windows (v nabídce START do okna pro vyhledávání zadáme příkaz cmd), případně použijeme přímo terminál v Linuxu.
Přesuneme se do adresáře, ve kterém máme adresář s balíkem (v našem případě adresář operace/).
Poté zadáme tyto příkazy:
R CMD check operace# zkontroluje kódy a strukturu
R CMD build operace# vytvoří tar.gz (tarball) soubor pro instalaci balíku v Linuxu
Balík se instaluje pomocí příkazu
R CMD INSTALL operace.tar.gz
2. RStudio
R studio je více uživatelský příjemný způsob tvorby balíků. Nejdříve si musíte z nabídky vybrat File-->New Project. Tvorba balíku je nový projekt. Pak vyberte adresář ve kterém chcete projekt vytvořit (nejlépe nový) a vyberte z Project Type nabídky typ projektu "R package". Otevře se Vám toto okno:
V tomto okně vyplníte název balíku (operace) a pak do dalšího okna ("Create package base on source file") s pomocí tlačítka "Add" vyberete soubory s .R funkcemi (tedy mocnina.R, rozdil.R, soucet.R, podil.R), které mají v balíku být.
Pak klikněte na "Create Project" a RStudio vytvoři v zadaném adresáři nový adresář s názvem operace a s předdefinovanou strukturou:
Psaní dokumentace
Máme dvě možnosti, jak přistoupit k psaní dokumentace k balíku (nápověda, vignette apod):
- Základní - dokumentace se dopisuje do automaticky vytvořených souborů
- S pomocí balíku roxygen2:
Balík roxygen2 obsahuje mnoho funkcí, které vytvářejí velice pěknou dokumentaci s použitím jednoduchého kódování.
>install.packages("devtools")
>install.packages("roxygen2")
>library(devtools)
>install_github("devtools", "hadley")
http://www.rstudio.com/ide/docs/packages/documentation
http://www.youtube.com/watch?v=9PyQlbAEujY
Příklad struktury .R souboru, ze kterého se poté vytvoří nápověda:
#' Popis balíku
#' @param x a numeric vector
#' @param a a numeric value
#' @return power of x to a
#' @export
mocnina<-function(x,a){return(x^a)}