astra-sites
domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init
action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/statplace/public_html/site/wp-includes/functions.php on line 6114jetpack
domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init
action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/statplace/public_html/site/wp-includes/functions.php on line 6114wpforms-lite
domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init
action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/statplace/public_html/site/wp-includes/functions.php on line 6114wordpress-seo
domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init
action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/statplace/public_html/site/wp-includes/functions.php on line 6114astra
foi ativado muito cedo. Isso geralmente é um indicador de que algum código no plugin ou tema está sendo executado muito cedo. As traduções devem ser carregadas na ação init
ou mais tarde. Leia como Depurar o WordPress para mais informações. (Esta mensagem foi adicionada na versão 6.7.0.) in /home/statplace/public_html/site/wp-includes/functions.php on line 6114A cria\u00e7\u00e3o de pacotes em R com devtools<\/em> \u00e9 uma habilidade essencial para programadores que desejam organizar e compartilhar suas funcionalidades de maneira eficiente. Um pacote bem estruturado n\u00e3o apenas facilita a reutiliza\u00e7\u00e3o do c\u00f3digo, mas tamb\u00e9m promove a colabora\u00e7\u00e3o e a manuten\u00e7\u00e3o a longo prazo. Neste guia, abordaremos de forma pr\u00e1tica como criar pacotes utilizando devtools<\/em>, seguindo as melhores pr\u00e1ticas recomendadas pela comunidade.<\/p>\n\n\n\n Os pacotes s\u00e3o a principal forma de compartilhar e reutilizar c\u00f3digo em R. Eles incluem:<\/p>\n\n\n\n Um pacote combina tudo isso, tornando-o f\u00e1cil de compartilhar com outras pessoas. Por exemplo, em mar\u00e7o de 2023, existiam mais de 19.000 pacotes dispon\u00edveis no CRAN (Comprehensive R Archive Network), o reposit\u00f3rio p\u00fablico de pacotes R. Essa grande variedade \u00e9 uma das raz\u00f5es do sucesso do R: \u00e9 prov\u00e1vel que algu\u00e9m j\u00e1 tenha resolvido um problema semelhante ao que voc\u00ea est\u00e1 enfrentando, permitindo que voc\u00ea aproveite o trabalho deles.<\/p>\n\n\n\n Al\u00e9m disso, mesmo que voc\u00ea n\u00e3o tenha a inten\u00e7\u00e3o de compartilhar seu c\u00f3digo, organizar seu trabalho em um pacote traz benef\u00edcios. As conven\u00e7\u00f5es de estrutura dos pacotes tornam sua vida mais f\u00e1cil:<\/p>\n\n\n\n Antes de come\u00e7ar, certifique-se de que os seguintes pacotes est\u00e3o instalados: As fun\u00e7\u00f5es devem ser criadas dentro da pasta R\/<\/strong>. Veja um exemplo de uma fun\u00e7\u00e3o simples:<\/p>\n\n\n\n Para tornar a fun\u00e7\u00e3o utiliz\u00e1vel por outros usu\u00e1rios, o par\u00e2metro Ap\u00f3s criar a fun\u00e7\u00e3o, gere a documenta\u00e7\u00e3o executando:<\/p>\n\n\n\n Para adicionar datasets ao seu pacote, use o comando:<\/p>\n\n\n\n Exemplo:<\/p>\n\n\n\n Isso salvar\u00e1 os dados no formato O arquivo DESCRIPTION<\/strong> cont\u00e9m informa\u00e7\u00f5es essenciais sobre o pacote, como nome, vers\u00e3o, autor e depend\u00eancias. Certifique-se de listar pacotes necess\u00e1rios em Depends<\/strong>, Imports<\/strong> ou Suggests<\/strong>.<\/p>\n\n\n\n A valida\u00e7\u00e3o \u00e9 fundamental para garantir a funcionalidade do c\u00f3digo. O pacote Isso criar\u00e1 a estrutura de testes no diret\u00f3rio tests\/testthat\/<\/strong>. Veja um exemplo de teste para a fun\u00e7\u00e3o Para executar os testes, utilize:<\/p>\n\n\n\n Antes de compartilhar seu pacote, execute uma checagem com:<\/p>\n\n\n\n Esse comando identificar\u00e1 potenciais erros e garantir\u00e1 que o pacote est\u00e1 pronto para uso.<\/p>\n\n\n\n Sabemos que criar pacotes em R com devtools<\/em> pode parecer desafiador inicialmente, mas o processo torna-se intuitivo com a pr\u00e1tica. Al\u00e9m de ajudar na organiza\u00e7\u00e3o e reutiliza\u00e7\u00e3o do c\u00f3digo, um pacote bem elaborado contribui para a dissemina\u00e7\u00e3o de conhecimento e facilita colabora\u00e7\u00f5es.<\/p>\n\n\n\nO que s\u00e3o Pacotes?<\/h2>\n\n\n\n
\n
\n
\n
\n
Criando um Pacote com Devtools<\/h2>\n\n\n\n
devtools, usethis, roxygen2, knitr e testthat.<\/mark><\/code><\/p>\n\n\n\n
Passo a Passo: Criando o Pacote no RStudio<\/strong><\/h3>\n\n\n\n
\n
<\/li>\n\n\n\n\n
.R<\/code>).<\/li>\n\n\n\n
Adicionando Fun\u00e7\u00f5es<\/strong><\/h3>\n\n\n\n
#' Soma
#'
#' Soma dois n\u00fameros.
#'
#' @param x Um n\u00famero.
#' @param y Um n\u00famero.
#' @return A soma dos dois n\u00fameros.
#' @examples
#' Soma(1, 1) # Deve retornar 2
#' Soma(10, 1) # Deve retornar 11
#' @export
Soma <- function(x, y) {
return(x + y)
}<\/code><\/pre>\n\n\n\n@export <\/code>deve ser adicionado. Caso utilize outros pacotes na fun\u00e7\u00e3o, indique com
@import nome_pacote.<\/code><\/p>\n\n\n\n
roxygen2::roxygenise() <\/code><\/pre>\n\n\n\n
Criando Datasets<\/strong><\/h3>\n\n\n\n
usethis::use_data(nome_dataset) <\/code><\/pre>\n\n\n\n
dados_exemplo <- data.frame(
col1 = 1:10,
col2 = 10:1
)
usethis::use_data(dados_exemplo) <\/code><\/pre>\n\n\n\n.rda<\/code> na pasta data\/<\/strong>.<\/p>\n\n\n\n
Configura\u00e7\u00e3o de Metadados<\/h2>\n\n\n\n
Testando o Pacote<\/h2>\n\n\n\n
testthat<\/code> simplifica essa etapa. Para configur\u00e1-lo, use:<\/p>\n\n\n\n
usethis::use_testthat() <\/code><\/pre>\n\n\n\n
Soma<\/code>:<\/p>\n\n\n\n
test_that(\"Soma corretamente\", {
expect_equal(Soma(3, 4), 7) # Verifica se 3 + 4 retorna 7
})<\/code><\/pre>\n\n\n\ndevtools::test() <\/code><\/pre>\n\n\n\n
Checagem e Publica\u00e7\u00e3o<\/h2>\n\n\n\n
devtools::check() <\/code><\/pre>\n\n\n\n
Conclus\u00e3o<\/h2>\n\n\n\n