Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

Reads Hydrological Simulation Program - FORTRAN binary files and prints to screen.

Project Description

Documentation for hspfbintoolbox

The hspfbintoolbox is a Python script and library of functions to read Hydrological Simulation Program Fortran (HSPF) binary files and print to screen. The time series can then be redirected to file, or piped to other command line programs like tstoolbox.


  • pandas - on Windows this is part of the Python(x,y), Enthought, or Anaconda distributions
  • mando - command line parser
  • tstoolbox - utilities to process time-series


Should be as easy as running pip install hspfbintoolbox or easy_install hspfbintoolbox at any command line. Not sure on Windows whether this will bring in pandas but as mentioned above, if you start with Python(x,y) then you won’t have a problem.

Usage - Command Line

Just run ‘hspfbintoolbox’ to get a list of subcommands:

Prints out a catalog of data sets in the binary file.
Prints out ALL data from a HSPF binary output file.
Prints out data to the screen from a HSPF binary output file.
DEPRECATED: Use ‘extract’ instead.

The default for all of the subcommands is to accept data from stdin (typically a pipe). If a subcommand accepts an input file for an argument, you can use “–infile=filename”, or to explicitly specify from stdin use “–infile=’-‘” .

For the subcommands that output data it is printed to the screen and you can then redirect to a file.

Usage - API

You can use all of the command line subcommands as functions. The function signature is identical to the command line subcommands. The return is always a PANDAS DataFrame. Input can be a CSV or TAB separated file, or a PANDAS DataFrame and is supplied to the function via the ‘input_ts’ keyword.

Simply import hspfbintoolbox:

import hspfbintoolbox

# Then you could call the functions
ntsd = hspfbintoolbox.dump('tests/test.hbn')

# Once you have a PANDAS DataFrame you can use that as input.
ntsd = tstoolbox.aggregate(statistic='mean', agg_interval='daily', input_ts=ntsd)

Release History

This version
History Node

History Node

History Node

History Node


Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, Size & Hash SHA256 Hash Help File Type Python Version Upload Date
(9.0 kB) Copy SHA256 Hash SHA256
Source None Feb 14, 2017

Supported By

Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Google Google Cloud Servers DreamHost DreamHost Log Hosting