Question

I have a function in R that looks somewhat like this:

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

I use it to get a single element out of a stacked object. For the package I'm building I need a .Rd file to document the function. I stored it as [.Rd but somehow the R CMD check does not see this. It returns:

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

The [.Rd file starts with these lines:

\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)
}

Any idea how I make R CMD check aware of this file?

Was it helpful?

Solution

If you look at the source code of the sp package, for example SpatialPolygons-class.Rd, the Methods section:

\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}
  }
}

method for [ is defined.

Name and class of the file are

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

If you look at the help page for ?SpatialPolygons you should see

> 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
> 

So I would venture a guess that if you specify a proper (ASCII named) file name, give it an alias as in the above example, you should be fine.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top