NCCOOS Trac Projects: Top | Web | Platforms | Processing | Viz | Sprints | Sandbox | (Wind)

Changeset 59

Show
Ignore:
Timestamp:
07/09/07 18:00:31
Author:
cbc
Message:

Fulfill ticket #5: Add class to split daily file into samples

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • sodar/trunk/sodar/__init.py__

    r57 r59  
    22Modules for sodar data 
    33 
    4 sodar.sample - classes to handle raw data files produced by sodar 
     4sodar.data - classes to handle raw data files produced by sodar 
    55""" 
    66 
    7 __all__ = ['sample'] 
     7__all__ = ['data'] 
  • sodar/trunk/sodar/data.py

    r58 r59  
    66""" 
    77 
    8 def split(): 
    9     """Split data file into samples""" 
    10     print "Data file processed." 
     8class Data(object): 
     9    """Split sodar daily file data into samples""" 
     10    def __init__(self,data): 
     11        import re 
     12        dataPattern = re.compile('\$') # samples in file are terminated by $ 
     13        samples = dataPattern.split(data) 
     14        self.samples = [sample for sample in samples if sample] 
    1115 
    1216def __main(): 
    1317    """Process as script from command line""" 
    14     split() 
     18    import urllib2 
     19    try: 
     20       data = urllib2.urlopen('http://nemo.isis.unc.edu/data/nccoos/level0/dukeforest/sodar/store/2007-06/20070601.dat') 
     21       data = data.read() 
     22    except: 
     23        print "Failure to read test data" 
     24    data = Data(data) 
     25    print '   --- Sample ---\n'.join(data.samples) 
    1526 
    1627if __name__ == "__main__":