Skip to content

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

9 messages · Ben Bolker, Abby Spurdle, Rasmus Liland +2 more

#
? "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
#
Hi, Martin, Ben, et al.:
On 2020-07-21 04:33, Martin Maechler wrote:
????? 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
#
Not interesting.
Note the imports and depends fields.
(Of your own packages).
Martin's comment used future tense.
#
On 2020-07-22 00:28 +1200, Abby Spurdle wrote:
| On 2020-07-21 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.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://stat.ethz.ch/pipermail/r-devel/attachments/20200721/f26bc769/attachment.sig>
#
>> "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 R-forge, see 
        packageDescription("Matrix")[["URL"]]
but it probably will be "real soon now".

The problem with that R-forge version (1.3-0) 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
#
On 2020-07-21 09:00, Martin Maechler wrote:
????? 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
#
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 R-package-devel?).

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