Mercurial > hg > numerics
view numerics/manipulate.py @ 117:0adf95bdda00
what a waste of time and i still dont have a plot
author | Jeff Hammel <k0scist@gmail.com> |
---|---|
date | Sun, 15 Mar 2015 20:41:57 -0700 |
parents | c4d26ef63d8e |
children | d255058333b2 |
line wrap: on
line source
#!/usr/bin/env python # -*- coding: utf-8 -*- """ manipulate CSV data """ # imports import argparse import os import sys from .convert import default_cast, cast_columns from .data import transpose from .read import CSVParser # module globals __all__ = ['ManipulationParser', 'main'] class ManipulationParser(CSVParser): """CLI option parser for data manipulation""" types = default_cast def __init__(self, **kwargs): kwargs.setdefault('description', __doc__) CSVParser.__init__(self, **kwargs) self.options = None def typed_data(self): """return parsed and casted data""" return cast_columns(self.columns(), self.types) def process(self): return transpose(self.typed_data()) def main(args=sys.argv[1:]): """CLI""" # parse command line options parser = ManipulationParser() options = parser.parse_args(args) # write manipulated data parser.write(parser.process()) if __name__ == '__main__': main()