big_cprodVec | R Documentation |
Cross-product between a Filebacked Big Matrix and a vector.
big_cprodVec(
X,
y.row,
ind.row = rows_along(X),
ind.col = cols_along(X),
center = NULL,
scale = NULL,
ncores = 1
)
X |
An object of class FBM. |
y.row |
A vector of same size as |
ind.row |
An optional vector of the row indices that are used. If not specified, all rows are used. Don't use negative indices. |
ind.col |
An optional vector of the column indices that are used. If not specified, all columns are used. Don't use negative indices. |
center |
Vector of same length of |
scale |
Vector of same length of |
ncores |
Number of cores used. Default doesn't use parallelism. You may use nb_cores. |
X^T \cdot y
.
X <- big_attachExtdata()
n <- nrow(X)
m <- ncol(X)
y <- rnorm(n)
test <- big_cprodVec(X, y) # vector
true <- crossprod(X[], y) # one-column matrix
all.equal(test, as.numeric(true))
# subsetting
ind.row <- sample(n, n/2)
ind.col <- sample(m, m/2)
tryCatch(test2 <- big_cprodVec(X, y, ind.row, ind.col),
error = function(e) print(e))
# returns an error. You need to use the subset of y:
test2 <- big_cprodVec(X, y[ind.row], ind.row, ind.col)
true2 <- crossprod(X[ind.row, ind.col], y[ind.row])
all.equal(test2, as.numeric(true2))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.