diff numerics/read.py @ 107:19a5c2fb52bb

add transpose functionality
author Jeff Hammel <k0scist@gmail.com>
date Sun, 15 Mar 2015 10:02:48 -0700
parents 32a849b8f1f0
children 5790bcb30bd8
line wrap: on
line diff
--- a/numerics/read.py	Sun Mar 15 09:54:13 2015 -0700
+++ b/numerics/read.py	Sun Mar 15 10:02:48 2015 -0700
@@ -12,6 +12,7 @@
 import csv
 import os
 import sys
+from .data import transpose
 from .write import CSVWriter
 
 # module globals
@@ -145,7 +146,7 @@
 
     def columns(self):
         """return columns vs `data`'s rows"""
-        raise NotImplementedError('TODO') # -> record TODO items
+        return transpose(self.read())
 
 
 def main(args=sys.argv[1:]):
@@ -153,6 +154,9 @@
 
     # parse command line options
     parser = CSVParser()
+    parser.add_argument('--transpose', dest='transpose',
+                        action='store_true', default=False,
+                        help="transpose columns and rows")
     options = parser.parse_args(args)
 
     if not options.csv:
@@ -160,7 +164,10 @@
         options.csv = [sys.stdin]
 
     # read CSV
-    data = parser.read()
+    if options.transpose:
+        data = parser.columns()
+    else:
+        data = parser.read()
 
     # write CSV
     writer = CSVWriter(options.output)