devtools::document error: thinking that part of function description should be imported as a package
devtools::document error: thinking that part of function description should be imported as a package
这是我第一次使用 devtools
,所以这可能是一些愚蠢的错误。请不要介意这些东西是葡萄牙语。
我在这个文件中为包编写了 3 个函数,其中两个要导出 datazoom_pnadc
、pnadc_painel_basico
:
#' @importFrom labelled set_variable_labels var_label
#' @importFrom readxl read_excel
#' @import tidyverse
#' 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,
...) {}
#' 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, ...){}
loop <- function(data,
interview = 2,
int_final = 5){...}
在运行devtools::document
之后,我遇到了以下问题:
Updating DatazoomR documentation
Loading DatazoomR
Writing NAMESPACE
Writing NAMESPACE
Writing pnadc_painel_basico.Rd
Warning messages:
1: In loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) :
there is no package called ‘Carregando’
2: In loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) :
there is no package called ‘brutos’
3: In loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) :
there is no package called ‘dados’
4: datazoom_pnadc.Rd is missing name/title. Skipping
我不知道为什么会这样。出于某种原因,描述中的一些词被认为是添加到 import
中的前一行。而且只有第二个功能被保存。
有人可以帮忙吗?好像跟格式化有关。
我使用 RStudio 的 "New Project > New Directory > R package using devtools" 创建了一个新的 R 包。
然后我添加了一个 R 文件,其中包含以下内容:
#' @importFrom labelled set_variable_labels var_label
#' @importFrom readxl read_excel
#' @import tidyverse
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, ...){}
loop <- function(data,
interview = 2,
int_final = 5){
return(NULL)
}
也就是说,我完全采用了您的代码,在 #' @import tidyverse
行之后立即添加了 NULL
,并用简单的 [=15= 替换了函数主体中的 ...
] 具有语法上有效的代码。
然后我使用 devtools::document()
使用 RStudio 快捷键 Ctrl-Shift-D,document()
运行 对我来说很好。
如果您在这一步之后仍然遇到问题,那是因为您的包裹中 code/comments 您没有向我们展示。
需要这一步的原因是 Roxygen 注释通常用于记录对象或给出 NAMESPACE 指令。由于在
之后您没有任何 R 对象或 roclet
#' @import tidyverse
它将下一个 Roxygen 评论解释为仍然属于最后一个 roclet,@import
。所以,你需要一个中间的 R 对象,你可以使用 NULL
.
这是我第一次使用 devtools
,所以这可能是一些愚蠢的错误。请不要介意这些东西是葡萄牙语。
我在这个文件中为包编写了 3 个函数,其中两个要导出 datazoom_pnadc
、pnadc_painel_basico
:
#' @importFrom labelled set_variable_labels var_label
#' @importFrom readxl read_excel
#' @import tidyverse
#' 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,
...) {}
#' 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, ...){}
loop <- function(data,
interview = 2,
int_final = 5){...}
在运行devtools::document
之后,我遇到了以下问题:
Updating DatazoomR documentation
Loading DatazoomR
Writing NAMESPACE
Writing NAMESPACE
Writing pnadc_painel_basico.Rd
Warning messages:
1: In loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) :
there is no package called ‘Carregando’
2: In loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) :
there is no package called ‘brutos’
3: In loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) :
there is no package called ‘dados’
4: datazoom_pnadc.Rd is missing name/title. Skipping
我不知道为什么会这样。出于某种原因,描述中的一些词被认为是添加到 import
中的前一行。而且只有第二个功能被保存。
有人可以帮忙吗?好像跟格式化有关。
我使用 RStudio 的 "New Project > New Directory > R package using devtools" 创建了一个新的 R 包。
然后我添加了一个 R 文件,其中包含以下内容:
#' @importFrom labelled set_variable_labels var_label
#' @importFrom readxl read_excel
#' @import tidyverse
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, ...){}
loop <- function(data,
interview = 2,
int_final = 5){
return(NULL)
}
也就是说,我完全采用了您的代码,在 #' @import tidyverse
行之后立即添加了 NULL
,并用简单的 [=15= 替换了函数主体中的 ...
] 具有语法上有效的代码。
然后我使用 devtools::document()
使用 RStudio 快捷键 Ctrl-Shift-D,document()
运行 对我来说很好。
如果您在这一步之后仍然遇到问题,那是因为您的包裹中 code/comments 您没有向我们展示。
需要这一步的原因是 Roxygen 注释通常用于记录对象或给出 NAMESPACE 指令。由于在
之后您没有任何 R 对象或 roclet#' @import tidyverse
它将下一个 Roxygen 评论解释为仍然属于最后一个 roclet,@import
。所以,你需要一个中间的 R 对象,你可以使用 NULL
.