diff options
author | Bryan Newbold <bnewbold@charm.mit.edu> | 2008-02-11 21:40:22 -0500 |
---|---|---|
committer | Bryan Newbold <bnewbold@charm.mit.edu> | 2008-02-11 21:40:22 -0500 |
commit | 81a0c260d321da151e244548188d13a963bf111f (patch) | |
tree | 338d1c747730e1d3f899d7c51a6a848e6098d33d /importdata.py | |
download | scipy-jlab-81a0c260d321da151e244548188d13a963bf111f.tar.gz scipy-jlab-81a0c260d321da151e244548188d13a963bf111f.zip |
initialization and import of old files from 8.13 in fall 2006
Diffstat (limited to 'importdata.py')
-rw-r--r-- | importdata.py | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/importdata.py b/importdata.py new file mode 100644 index 0000000..a72f71e --- /dev/null +++ b/importdata.py @@ -0,0 +1,101 @@ +# @author: bryan newbold +# @email: bnewbold@mit.edu +# @date: nov 2006 + +import shutil, os, scipy, pylab; + +def dothing(arg,thisdir,files): + global all_data + for fname in files: + if os.path.isfile(thisdir + '/' + fname): + if (fname.find('.') == -1): + try: + dat = pylab.load(thisdir + '/' + fname) + all_data[fname.split('.')[0]] = dat + print "Loaded (no type): %s/%s" % (thisdir,fname); + except: + print "Tried, but didn't load (no type): %s/%s" % (thisdir,fname); + elif fname.endswith('.TKA'): + try: + dat = pylab.load(thisdir + '/' + fname) + #print all_data + all_data[fname.split('.')[0]] = dat + print "Loaded .TKA: %s/%s" % (thisdir,fname); + #print "all_data has %d" % len(all_data) + except: + print "Tried, but didn't load .TKA: %s/%s" % (thisdir,fname); + elif fname.endswith('.txt'): + try: + dat = pylab.load(thisdir + '/' + fname,skiprows=1) + #print all_data + all_data[fname.split('.')[0]] = dat + print "Loaded .txt: %s/%s" % (thisdir,fname); + #print "all_data has %d" % len(all_data) + except: + print "Tried, but didn't load .txt: %s/%s" % (thisdir,fname); + elif fname.endswith('.Spe!!!'): +# try: + dat = pylab.load(thisdir+'/'+fname,skiprows=12); + # also have to skip 15 from the end... + print "trying: " + fname; +# dat = scipy.io.read_array(thisdir + '/' + fname,lines=((14,-40,),)) +# print len(dat) +# print dat + dat = scipy.array(dat); + all_data[fname.split('.')[0]] = dat + print "Loaded .Spe: %s/%s" % (thisdir,fname); +# except: + print "Tried, but didn't load .Spe: %s/%s" % (thisdir,fname); + else: + print "Didn't load %s/%s" % (thisdir,fname); + else: + print "Wasn't a file: %s/%s" % (thisdir,fname); + +def import_data(outfile='data.pydat',root='.',saveit=True,recurse=False): + """Imports all that yummah files...""" + global all_data + if saveit: + ofile = file(outfile,'w'); + ofile.close() + all_data = {} + if recurse: + os.path.walk(root,dothing,'') + else: + dothing('',root,os.listdir(os.getcwd())); + if saveit: + print "Saving %d objects to %s" % (len(all_data), outfile); + scipy.io.objsave(ofile.name,globals(),all_data); + g = globals() + for a in all_data.keys(): + g[a.replace('-','_')] = all_data[a] + +def load_imported_data(infile='data.pydat'): + global all_data + scipy.io.objload(infile,globals()) + g=globals() + for a in all_data.keys(): + if(a.startswith('11')): + g['d3' + a.replace('-','_')[9:]]=all_data[a] + else: + g[a.replace('-','_')]=all_data[a] + +def dorenamething(arg,thisdir,files): + for fname in files: + if os.path.isfile(thisdir + '/' + fname): + if fname.endswith('.Spe'): + try: + shutil.copy(thisdir+'/'+fname,thisdir + '/' + fname[:-4]); + print "Copied .Spe: %s/%s" % (thisdir,fname); + except: + print "Tried, but didn't load .Spe: %s/%s" % (thisdir,fname); + else: + print "Didn't load %s/%s" % (thisdir,fname); + else: + print "Wasn't a file: %s/%s" % (thisdir,fname); + +def rename_data_files(root='.',ext='.Spe',recurse=False): + """Only works for .Spe...""" + if recurse: + os.path.walk(root,dorenamething,'') + else: + dorenamething('',root,os.listdir(os.getcwd())); |