Dynamic data analysis over the web. The logic to your data dashboards.
Python Shell JavaScript
Pull request Compare This branch is 1 commit behind pld:master.
Latest commit 8ab0df6 Mar 26, 2014 @pld pld Merge branch 'master' of github.com:pld/bamboo into pld-master
* 'master' of github.com:pld/bamboo:
  PLD: downsample farther
  PLD: update docs link
  PLD: try without mp fix
  PLD: do not clean up celery
  PLD: fix reference to io module, it was renamed to readers, closes #68
  PLD: update repo links to use sel and pld over modilabs
  PLD: add link to map
  Fixed travis-CI link
  check update invalid returns success but does not commit or remain pending, closes 596
  return pending updates in info, helper methods for clearing and removing a pending update
  check if upadate is valid in calculate updates, remove pending update if invalid
  add option to clear pending updates

Failed to load latest commit information.
assets move from vincent to personalized bearcart May 11, 2013
bamboo PLD: downsample farther Mar 5, 2014
celeryd symlink fix and cleanup Mar 2, 2013
deploy bump pandas to 0.12 Aug 22, 2013
docs Merge branch 'master' of github.com:pld/bamboo into pld-master Mar 26, 2014
external show x-axis labels in hover, closes #557 Jun 1, 2013
CHANGES.txt files for pypi install Dec 9, 2012
fabfile.py add pull back Sep 10, 2013





bamboo is an application that systematizes realtime data analysis. bamboo provides an interface for merging, aggregating and adding algebraic calculations to dynamic datasets.

Clients can interact with bamboo through a REST web interface, a Python library, or a JavaScript library. For more languages request a libary in the language you prefer.

bamboo supports a simple querying language to build calculations (e.g. student teacher ratio) and aggregations (e.g. average number of students per district) from datasets. These are updated as new data is received.

bamboo uses pandas for data analysis, pyparsing to read formulas, and mongodb to serialize data.

bamboo is open source software released under the 3-clause BSD license, which is also known as the "Modified BSD License".


  • python (tested on version 2.7)
  • mongodb

for numpy, pandas, and scipy:

On Arch Linux: # pacman -S blas lapack gcc-fortran.

On Debian based: # apt-get install gfortran libatlas-base-dev.

On Mac OS X: $ brew install gfortran.

Using as a Python Libary


$ pip install bamboo-server

Python pip package for bamboo.

For creating plots: $ pip install matplotlib.


import bamboo as bm

# Turn asyncronous processing off

url = 'http://formhub.org/mberg/forms/good_eats/data.csv'
dataset = bm.Dataset.create()
dataset.import_from_url(url, na_values=['n/a'])

>>> {u'_gps_altitude': {u'cardinality': 14, u'label': u'_gps_altitude', ...

# Resample monthly, 'M', aggregating by mean
date_column = 'submit_date'
monthly = ds.resample(date_column, 'M', 'mean').set_index(date_column)
monthly_amounts = monthly.amount.dropna()

# Plot the amount spent per month



$ ./scripts/install.sh

Example Usage

On the remote server

running the example basic commands

$ ./scripts/commands.sh

using bamboo.JS

var dataset = new bamboo.Dataset({url: 'http://bitly.com/ZfzBwP'});

using pybamboo

from pybamboo import PyBamboo
pybamboo = PyBamboo()
response = pybamboo.store_csv_file('http://formhub.org/mberg/forms/good_eats/data.csv')
dataset_id = response['id']

posting a dataset

$ curl -X POST -d "url=http://formhub.org/mberg/forms/good_eats/data.csv" http://bamboo.io/datasets


Viewing Documentation

The latest docs are available at http://bamboo.readthedocs.org/en/latest/


Join the bamboo-dev list.

bamboo is an open source project. The project features, in chronological order, the combined efforts of

  • Peter Lubell-Doughtie
  • Mark Johnston
  • Prabhas Pokharel
  • Renaud Gaudin
  • Myf Ma
  • Ukang'a Dickson
  • Larry Weya

and other developers.

Projects using bamboo

  • bamboo.io - The bamboo.io web service API
  • formhub - Mobile Data Collection made easy
  • OnaData - Use mobile phones and the web to quickly collect, analyze, and share data securely.
  • AFSIS - Africa Soil Information Service

Is your project using bamboo? Let us know!