I/O Operations with Sparse Matrices

Fast 'SVMlight' reader and writer. 'SVMlight' is most commonly used format for storing sparse matrices (possibly with some target variable) on disk. For additional information about 'SVMlight' format see < http://svmlight.joachims.org/>.


sparsio

sparsio is a small (the only dependency is Rcpp) R package for sparse matrices Input/Output. It provides fast svmlight reader and writer.

  • read_svmlight()
  • write_svmlight()

Quick reference

library(Matrix)
library(sparsio)
N = 1e8
i = sample(1e5, N, T)
j = sample(1e5, N, T)
vals = runif(N)
x = sparseMatrix(i, j, x = vals)
print(object.size(x), units = "Gb")
# 1.1 Gb

y = sample(c(0, 1), nrow(x), replace = TRUE)
f = tempfile(fileext = ".svmlight")
system.time(write_svmlight(x, y, f))
# user  system elapsed 
# 68.014   2.785  70.899

file.size(f)/1e9
# 1.48135 Gb

system.time(x2 <- read_svmlight(f, type = "CsparseMatrix"))
# user  system elapsed 
# 55.021   2.803  57.892

all.equal(x2$x, x)
# "Mean relative difference: 4.636406e-07"
all.equal(x2$y, y)
# TRUE

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("sparsio")

1.0.1 by Dmitriy Selivanov, 7 years ago


https://github.com/dselivanov/sparsio


Report a bug at https://github.com/dselivanov/sparsio/issues


Browse source code at https://github.com/cran/sparsio


Authors: Dmitriy Selivanov [aut, cre] , Felix Riedel [aut]


Documentation:   PDF Manual  


GPL (>= 2) | file LICENSE license


Imports Rcpp, Matrix

Depends on methods

Suggests testthat

Linking to Rcpp


See at CRAN