map-tabular-keys

1.0.0 • Public • Published

map-tabular-keys

Transform the keys of a tabular object stream with a map function. Because the data is assumed to be tabular, only the keys of the first row are mapped. The resulting keys are then used for all rows.

npm status Travis build status AppVeyor build status Dependency status

example

var map    = require('map-tabular-keys')
  , snake  = require('snake-case')
  , from   = require('from2-array')
  , concat = require('concat-stream')
 
from.obj([
  { 'column a': 3, columnB: 0.2 },
  { 'column a': 4, columnB: 0.3, ignored: true }
])
 
.pipe( map(snake) )
.pipe( concat(console.log.bind(console)) )

The output would be:

[
  { column_a: 3, column_b: 0.2 },
  { column_a: 4, column_b: 0.3 }
]

api

map([options], mapFunction)

mapFunction receives a single argument, for every key of the first row. If it returns an empty string or anything other than a string, the key is ignored (i.e., not included in the emitted objects).

map(function(key) {
  if (key === 'useless') return false
  return key.toUpperCase()
})

Options:

  • defaultValue: mixed (default is 0): fallback to use for null and undefined values
  • bare: boolean (default is false): whether to emit bare objects (created with Object.create(null)) or plain objects

install

With npm do:

npm install map-tabular-keys

license

MIT © Vincent Weevers

/map-tabular-keys/

    Package Sidebar

    Install

    npm i map-tabular-keys

    Weekly Downloads

    1

    Version

    1.0.0

    License

    MIT

    Last publish

    Collaborators

    • vweevers