A Simple S3 Class for Representing Vectors of Binary Data ('BLOBS')

R's raw vector is useful for storing a single binary object. What if you want to put a vector of them in a data frame? The 'blob' package provides the blob object, a list of raw vectors, suitable for use as a column in data frame.


Travis-CI Build Status CRAN_Status_Badge Coverage Status

The goal of blob is to provide a simple S3 class to represent a vector of binary objects, aka blobs. The blob class is a lightweight wrapper around a list of raw vectors, suitable for inclusion in a data frame.

In most cases you will not need to use this package explicitly: it will be used transparently by packages that need to load BLOB columns from databases or binary file formats.

Installation

You can install blob from github with:

devtools::install_github("tidyverse/blob")

Example

To create a blob, use blob(), new_blob() or as.blob():

x1 <- charToRaw("Good morning")
x2 <- as.raw(c(0x48, 0x65, 0x6c, 0x6c, 0x6f))
 
new_blob(list(x1, x2))
#> [1] blob[12 B] blob[5 B]
blob(x1, x2)
#> [1] blob[12 B] blob[5 B]
 
as.blob(c("Good morning", "Good evening"))
#> [1] blob[12 B] blob[12 B]

News

blob 1.1.1 (2018-03-24)

  • Now suggesting pillar instead of importing tibble, and using colored formatting with the prettyunits package with B instead of b as units (#7, #9).

  • The blob class can now be used for S4 dispatch.

  • Calling c() on blob objects returns a blob.

blob 1.1.0 (2017-06-17)

  • New maintainer: Kirill Müller.

  • Added as.blob.blob()and as.data.frame.blob() methods (#3).

  • Size of very large blobs is displayed correctly.

blob 1.0.0

  • Initial release.

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("blob")

1.2.1 by Kirill Müller, a year ago


https://github.com/tidyverse/blob


Report a bug at https://github.com/tidyverse/blob/issues


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


Authors: Hadley Wickham [aut] , Kirill Müller [cre] , RStudio [cph]


Documentation:   PDF Manual  


GPL-3 license


Imports methods, rlang, vctrs

Suggests covr, crayon, pillar, testthat


Imported by DBItest, RPostgres, RSQLite, dbplyr, flobr, odbc, sparklyr.

Suggested by DBI, bigrquery, dbx, dplyr.teradata, ipaddress, sf, tibble.


See at CRAN