已创建的程序包未运行来自NAMESPACE文件中导入的程序包的功能

问题描述 投票:0回答:1

这是我的第一个包裹。这是我的.R文件的运行方式,具有3个函数,其中两个要导出。它们的实际内容并不重要,只是它使用了很多tidyverse函数。

#' @import tidyverse
#' @importFrom labelled set_variable_labels var_label
#' @importFrom readxl read_excel cell_cols

NULL

#' Carregando dados brutos
#'
#' @param diretorio_dados Diretório onde os microdados originais em formato de texto estão armazenados
#'
#' @param diretorio_dicionario Diretório onde o dicionário da pesquisa em formato xls está armaezenado
#'
#' @param ... vetores com datas das pesquisas de interesse no  formato \code{c('trimestre', 'ano')}
#'
#' @return Lista de dataframes, sendo cada entrada um trimestre/ano em \code{...}
#' @encoding UTF-8
#' @export
#'
#' @examples
#' datazoom_pnadc('./Desktop', './Desktop', c(1, 2000), c(2, 2000))
#'
datazoom_pnadc <- function(diretorio_dados,
                           diretorio_dicionario,
                           ...) {


  return(NULL)
}

 #' Painel básico
 #'
 #' @param build_data Default \code{TRUE}.
 #' Se \code{TRUE}, implementa primeiro \code{\link{datazoom_pnadc}} e depois
 #' monta paineis de indivíduos. Se \code{FALSE}, a função constrói paneis a partir de dados já carregados no R
 #'
 #' @param dados_prontos Bases de dados para diferentes trimestres da PNAD contínua.
 #' Necessário se \code{build_data = FALSE}
 #'
 #' @param local_dados Diretório onde os microdados originais em formato de texto estão armazenados
 #' caso \code{build_data = TRUE}
 #'
 #' @param local_dicionarios Diretório onde o dicionário da pesquisa em formato xls está armaezenado caso
 #' \code{build_data = TRUE}
 #'
 #' @param periodos Lista de vetores com períodos de interesse no formato
 #' \code{periodos = list(c(trimestre1, ano1), c(trimestre2, ano2), ...)}
 #'
 #' @encoding UTF-8
 #'
 #' @return Lista de dataframes, sendo cada entrada um trimestre/ano
 #'
 #' @examples
 #' PNADC_2012 <- datazoom_pnadc(diretorio_dados = './Desktop',
 #' diretorio_dicionario = './pnadcontinua/Desktop',
 #' c(1,2012), c(2,2012))
 #'
 #' teste <- pnadc_painel_basico(build_data = FALSE,
 #'                              dados_prontos = PNADC_2012)
 #'
 #' teste2 <- pnadc_painel_basico(build_data = TRUE,
 #'                               local_dados = './pnadcontinua',
 #'                               local_dicionario = './pnadcontinua/Dicionario_e_input',
 #'                               periodos = list(c(1,2012), c(2,2012)))
 #' @export
pnadc_painel_basico <- function(build_data = TRUE, ...){
    return(NULL)

}

由于某些原因,即使运行devtools::document()并将其保存在我的NAMESPACE文件中:

# Generated by roxygen2: do not edit by hand

export(datazoom_pnadc)
export(pnadc_painel_basico)
import(tidyverse)
importFrom(labelled,set_variable_labels)
importFrom(labelled,var_label)
importFrom(readxl,cell_cols)
importFrom(readxl,read_excel)

如果我未事先设置library(tidyverse)library(labelled)library(readxl),则安装和加载该软件包后的功能将无法运行。>>

除了其他必需的部分,我的DESCRIPTION文件具有此:

Imports: 
    labelled,
    readxl,
    tidyverse

有人可以帮忙吗?

这是我的第一个包裹。这是我的.R文件的运行方式,具有3个函数,其中两个要导出。它们的实际内容并不重要,只是它使用了许多dydyverse函数。 #'@ ...

r namespaces devtools
1个回答
0
投票
tidyverse中的ImportsDepends移至DESCRIPTION将使其起作用,但是,如果要开发正式的程序包,则不建议这样做。像@Bruno一样评论:
© www.soinside.com 2019 - 2024. All rights reserved.