私は同じ家族で 2 つの機能を持っています。私は roxygen2 を使用して文書化しており、それらを同じヘルプ ファイルにまとめることができますが、文書内の使用法フィールドに両方の機能を持たせる方法がわかりません。
私は試した:
#' @usage matrix2vectors(cor.mat) vectors2matrix(cor.vect)
これは与える:
matrix2vectors(cor.mat) vectors2matrix(cor.vect)
カンマで区切って試してみたところ、最初のものだけが得られ、別の使用タグを試してみたところ、最初のものだけが使用されます。
roxygen を使用して使用法フィールドに 2 つの項目を作成するにはどうすればよい?lapply
ですか?
編集:GeeSeeの質問ごとに、.Rファイル全体
#' Convert Between Correlation Matrix and Upper Triangle Dataframe
#'
#' Tools to convert between a correlation matrix and a dataframe of upper triangle
#' values and variable components. The dataframe is more intuitive for applying
#' functions while the correlation matrix is more intuitive to visualize.
#'
#' @aliases matrix2vectors, vectors2matrix
#' @usage matrix2vectors(cor.mat)
#' @usage vectors2matrix(cor.vect)
#' @rdname matrix2vectors
#' @param cor.mat A square, symetrical matrix with a diagonas of 1s (a correlation matrix).
#' @param cor.vect A dataframe with the row variables of the correlation matrix in the first
#' column, the column names in the second column and the corresponding correlations in the
#' third column.
#' @export
#' @examples
#' (mat <- round(cor(mtcars[, 1:5]), 2))
#' matrix2vectors(mat)
#' cor.vect <- matrix2vectors(round(cor(mtcars[, 1:5]), 2))
#' vectors2matrix(cor.vect)
matrix2vectors <- function(cor.mat) {
nmscor <- colnames(cor.mat)
rows <- nmscor[1:(length(nmscor)-1)]
cols <- nmscor[2:length(nmscor)]
rowdim <- 1:length(rows)
row.var <- rows[unlist(lapply(seq_along(rowdim), function(i) rowdim[1:i]))]
col.var <- rep(cols, 1:length(cols))
cors <- cor.mat[upper.tri(cor.mat)]
data.frame(row.var, col.var, cors)
}
#' @export
#' @export
vectors2matrix <- function(cor.vect) {
dimnms <- unique(c(as.character(cor.vect[, 1]),
as.character(cor.vect[, 2])))
mat <- matrix(NA, length(dimnms), length(dimnms))
mat[upper.tri(mat)] <- cor.vect[, 3]
diag(mat) <- 1
dimnames(mat) <- list(dimnms, dimnms)
mat[lower.tri(mat)] <- t(mat)[lower.tri(mat)]
mat
}
#' @export