\HeaderA{fsetdiff-methods}{difference}{fsetdiff.Rdash.methods}
\aliasA{fsetdiff,Massvector,Massvector-method}{fsetdiff-methods}{fsetdiff,Massvector,Massvector.Rdash.method}
\aliasA{fsetdiff,Massvectorlist,Massvector-method}{fsetdiff-methods}{fsetdiff,Massvectorlist,Massvector.Rdash.method}
\aliasA{fsetdiff,numeric,numeric-method}{fsetdiff-methods}{fsetdiff,numeric,numeric.Rdash.method}
\keyword{methods}{fsetdiff-methods}
\keyword{manip}{fsetdiff-methods}
\begin{Description}\relax
Performs *set* (asymmetric!) difference on two Massvectors
\end{Description}
\begin{Arguments}
\begin{ldescription}
\item[\code{obx}] see below in \bold{Methods} section
\item[\code{oby}] see below in \bold{Methods} section
\item[\code{error}] measurement error in \emph{e.g.} Da or as relative error
in parts per million (ppm)
\item[\code{ppm}] if \code{TRUE} then error in parts per million(ppm), in
arbitrary units otherwise.
\item[\code{uniq}] if \code{TRUE} compute non-crossing matching.
\end{ldescription}
\end{Arguments}
\begin{Section}{Methods}
\describe{
\item[obx = "numeric", oby = "numeric"] ...
\item[obx = "Massvector", oby = "Massvector"] ...
\item[obx = "Massvectorlist", oby = "Massvector"] ...
}
\end{Section}
\begin{SeeAlso}\relax
\code{\LinkA{Massvector-class}{Massvector.Rdash.class}}
,\code{\LinkA{Massvectorlist-class}{Massvectorlist.Rdash.class}}
,\code{\LinkA{fintersect-methods}{fintersect.Rdash.methods}}
,\code{\LinkA{setdiff}{setdiff}}
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
data(pldata)
pl1 <- pldata[[1]]
pl2 <- pldata[[4]]
length(pl1)
length(fsetdiff(pl1[,1,drop=TRUE],pl2[,1,drop=TRUE],error=0.1,ppm=FALSE))
length(fsetdiff(pl1,pldata[[1]],error=0.1,ppm=FALSE))
length(fsetdiff(pldata,pl1,error=0.1,ppm=FALSE)[[4]])
\end{ExampleCode}
\end{Examples}

