2012-07-03 3 views
4

J'ai une fonction R qui ressemble un peu à ceci:Documentation du support au carré `[fonction`

setMethod('[', signature(x="stack"),definition=function(x,i,j,drop){ 
    new('class', as(x, "SpatialPointsDataFrame")[i,]) }) 

Je l'utilise pour obtenir un seul élément d'un objet empilé. Pour le paquet que je construis j'ai besoin d'un fichier .Rd pour documenter la fonction. Je l'ai stocké comme [.Rd mais en quelque sorte le contrôle R CMD ne voit pas cela. Il retourne:

Undocumented S4 methods: generic '[' and siglist 'MoveStack,ANY,ANY' 

Le fichier [.Rd commence par ces lignes:

\name{[}  
\alias{[} 
\alias{[,stack,ANY,ANY-method}  
\docType{methods}  
\title{Returns an object from a stack}  
\description{Returning a single object}  
\usage{ 
    \S4method{\[}{stack,ANY,ANY}(x,i,y,drop) 
} 

Toute idée de comment je fais R CMD vérifier au courant de ce dossier?

Répondre

3

Si vous regardez le code source du paquet sp, par exemple SpatialPolygons-class.Rd, la section Méthodes:

méthode
\section{Methods}{ 
Methods defined with class "SpatialPolygons" in the signature: 
    \describe{ 
    \item{[}{\code{signature(obj = "SpatialPolygons")}: select subset of (sets of) polygons; NAs are not permitted in the row index} 
    \item{plot}{\code{signature(x = "SpatialPolygons", y = "missing")}: 
    plot polygons in SpatialPolygons object} 
    \item{summary}{\code{signature(object = "SpatialPolygons")}: summarize object} 
    \item{rbind}{\code{signature(object = "SpatialPolygons")}: rbind-like method} 
    } 
} 

pour [ est défini.

Nom et classe du fichier sont

\name{SpatialPolygons-class} 
\alias{[,SpatialPolygons-method} 

Si vous regardez la page d'aide pour ?SpatialPolygons vous devriez voir

> Methods 
> 
> Methods defined with class "SpatialPolygons" in the signature: 
> 
> [ signature(obj = "SpatialPolygons"): select subset of (sets of) 
> polygons; NAs are not permitted in the row index 
> 

Je me risquerais à dire que si vous spécifiez un bon (Nom ASCII), donnez-lui un alias comme dans l'exemple ci-dessus, ça devrait aller.

+0

Salut Roman, merci pour cette indication. J'ai changé le nom de fichier du fichier .Rd en sous-ensemble.RD et ai changé le nom et l'alias en \ nom {méthode sous-ensemble} \ alias {[, pile, ANY, ANY-méthode}. Cela a résolu le problème. Merci! – Marco

Questions connexes