trivial typo in ?Matrix::sparse.model.matrix.R


Re: trivial typo in ?Matrix::sparse.model.matrix.R

>>>>> Ben Bolker
>>>>> on Mon, 20 Jul 2020 20:11:04 0400 writes: > "form" > "from". Diff against latest SVN: > Index: sparse.model.matrix.Rd > =================================================================== >  sparse.model.matrix.Rd (revision 3336) > +++ sparse.model.matrix.Rd (working copy) > @@ 4,7 +4,7 @@ > \alias{fac2sparse} > \alias{fac2Sparse} > \description{Construct a sparse model or \dQuote{design} matrix, >  form a formula and data frame (\code{sparse.model.matrix}) or a single > + from a formula and data frame (\code{sparse.model.matrix}) or a single > factor (\code{fac2sparse}). > The \code{fac2[Ss]parse()} functions are utilities, also used Thank you, Ben; corrected in my (not yet committed) development version. BTW, there will be another improvement there, deprecating 'giveCsparse = TRUE' and replacing it by 'repr = "C"' the latter allowing all three kind of sparseMatrix formats ("C", "R", "T") instead of just Csparse* and Tsparse*. Best regards, Martin ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/rdevel 
Hi, Martin, Ben, et al.:
On 20200721 04:33, Martin Maechler wrote: >>>>>> Ben Bolker >>>>>> on Mon, 20 Jul 2020 20:11:04 0400 writes: >> "form" > "from". Diff against latest SVN: >> Index: sparse.model.matrix.Rd >> =================================================================== >>  sparse.model.matrix.Rd (revision 3336) >> +++ sparse.model.matrix.Rd (working copy) >> @@ 4,7 +4,7 @@ >> \alias{fac2sparse} >> \alias{fac2Sparse} >> \description{Construct a sparse model or \dQuote{design} matrix, >>  form a formula and data frame (\code{sparse.model.matrix}) or a single >> + from a formula and data frame (\code{sparse.model.matrix}) or a single >> factor (\code{fac2sparse}). >> The \code{fac2[Ss]parse()} functions are utilities, also used > Thank you, Ben; corrected in my (not yet committed) development > version. > > BTW, there will be another improvement there, > deprecating 'giveCsparse = TRUE' > and replacing it by 'repr = "C"' > > the latter allowing all three kind of sparseMatrix formats > ("C", "R", "T") instead of just Csparse* and Tsparse*. How I can learn more about this, including (a) 'repr = ("C", "R", "T")', (b) how it creeps into my code, and (c) when I can expect to see it? I'm running R 4.0.2, and "?sparse.model.matrix" on a fresh session generates "No documentation for ‘sparse.model.matrix’ in specified packages and libraries", but it's there after "library(Ecfun)". I find that interesting, because "Matrix" does not appear in the Ecfun DESCRIPTION file. AND I don't see 'repr = ("C", "R", "T")' in the "sparse.model.matrix" help file I do see. Thanks, Spencer Graves > > Best regards, > Martin > > ______________________________________________ > [hidden email] mailing list > https://stat.ethz.ch/mailman/listinfo/rdevel ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/rdevel 
> "No documentation for ‘sparse.model.matrix’ in
> specified packages and libraries", but it's there after > "library(Ecfun)". I find that interesting, because "Matrix" does not > appear in the Ecfun DESCRIPTION file. Not interesting. Note the imports and depends fields. (Of your own packages). > AND I don't see 'repr = ("C", > "R", "T")' in the "sparse.model.matrix" help file I do see. Martin's comment used future tense. ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/rdevel 
On 20200722 00:28 +1200, Abby Spurdle wrote:
 On 20200721 06:29 0500, Spencer Graves wrote:     I'm running R 4.0.2, and   "?sparse.model.matrix"   Not interesting.  Note the imports and depends fields.  (Of your own packages). Spencer, you need to specify the package the function belong to, ?Matrix::sparse.model.matrix, or import library(Matrix) ...   How I can learn more about this,   including (a) 'repr = ("C", "R",   "T")', (b) how it creeps into my   code, and (c) when I can expect to   see it? I don't know the answer to these three. ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/rdevel signature.asc (849 bytes) Download Attachment 
In reply to this post by Abby Spurdle
>>>>> "AS" == Abby Spurdle
>>>>> on Wed, 22 Jul 2020 00:28:12 +1200 writes: >> "No documentation for ‘sparse.model.matrix’ in >> specified packages and libraries", but it's there after >> "library(Ecfun)". I find that interesting, because "Matrix" does not >> appear in the Ecfun DESCRIPTION file. AS> Not interesting. AS> Note the imports and depends fields. AS> (Of your own packages). >> AND I don't see 'repr = ("C", >> "R", "T")' in the "sparse.model.matrix" help file I do see. AS> Martin's comment used future tense. Indeed. It's not even yet in the *development* version of Matrix on Rforge, see packageDescription("Matrix")[["URL"]] but it probably will be "real soon now". The problem with that Rforge version (1.30) of Matrix is that half a dozen CRAN packages at least need to be slightly fixed before that Matrix version becomes default on CRAN, as these packages make assumptions about unspecified behavior of some Matrix functions, notably Matrix::Matrix() which in that next version of Matrix will produce "diagonalMatrix" instead of "CsparseMatrix" objects in more cases.... a good thing, but not what those packages have assumed... @Spencer: Are you actively using 'giveCsparse = ..' somewhere in your code? If not, why would you be interested in the details of the changes (which would be entirely invisible to you as user) ? Martin ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/rdevel 
On 20200721 09:00, Martin Maechler wrote: >>>>>> "AS" == Abby Spurdle >>>>>> on Wed, 22 Jul 2020 00:28:12 +1200 writes: > >> "No documentation for ‘sparse.model.matrix’ in > >> specified packages and libraries", but it's there after > >> "library(Ecfun)". I find that interesting, because "Matrix" does not > >> appear in the Ecfun DESCRIPTION file. > > AS> Not interesting. > AS> Note the imports and depends fields. > AS> (Of your own packages). > > >> AND I don't see 'repr = ("C", > >> "R", "T")' in the "sparse.model.matrix" help file I do see. > > AS> Martin's comment used future tense. > > Indeed. It's not even yet in the *development* version of Matrix > on Rforge, see > packageDescription("Matrix")[["URL"]] > but it probably will be "real soon now". > > The problem with that Rforge version (1.30) of Matrix is that > half a dozen CRAN packages at least need to be slightly fixed > before that Matrix version becomes default on CRAN, as these > packages make assumptions about unspecified behavior of some > Matrix functions, notably Matrix::Matrix() which in that next version > of Matrix will produce "diagonalMatrix" instead of > "CsparseMatrix" objects in more cases.... a good thing, but not > what those packages have assumed... > > @Spencer: Are you actively using 'giveCsparse = ..' somewhere > in your code? > If not, why would you be interested in the details of the changes > (which would be entirely invisible to you as user) ? Jim Ramsay is rewriting the code for fda::fRegress. It requires a double iteration, which is already fairly expensive and often involves large matrices, especially if you want to estimate, e.g., more spline coefficients than observations by using some smoothness criterion to make the problem estimable. I suggested he consider a singular value decomposition, which would preserve numerical precision AND maybe transform the problem into a series of univariate optimization problems. By the way, Ecfun includes some 32 "suggests" and "imports". "Matrix" is not one of them, but it must be called by something else that's loaded by Ecfun, to get the result I got. Thanks, Spencer > > Martin ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/rdevel 
> By the way, Ecfun includes some 32 "suggests" and "imports".
> "Matrix" is not one of them, but it must be called by something else > that's loaded by Ecfun, to get the result I got. Spencer, I find some of your comments/questions on R packages, extremely basic. (Sorry, if that sounds condescending, but I'm wondering if your comments/questions would be better Rpackagedevel?). You need to look at the imports and depends fields. (As stated in my previous post). The *first* package on the Ecfun imports list, is fda, which is *your* package (technically, contributor), and it has a dependency on the Matrix package. I'd recommend you read the documentation on writing R packages, and on how package namespaces are handled. ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/rdevel 
> The *first* package on the Ecfun imports list, is fda, which is *your*
> package (technically, contributor), and it has a dependency on the > Matrix package. My post this morning might have come across the wrong way. It's good that you're interested in software for numerical linear algebra. (I only just worked the importance of this, about a year ago). And I may also have a closer look at the Matrix package, in the near future. ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/rdevel 
Free forum by Nabble  Edit this page 