diff --git a/SpdCoach-2136923-2010-02-01-20-46-22o.csv.gz b/SpdCoach-2136923-2010-02-01-20-46-22o.csv.gz new file mode 100644 index 00000000..1f2549c3 Binary files /dev/null and b/SpdCoach-2136923-2010-02-01-20-46-22o.csv.gz differ diff --git a/rowers/dataprep.py b/rowers/dataprep.py index b6dbad35..c722c348 100644 --- a/rowers/dataprep.py +++ b/rowers/dataprep.py @@ -42,6 +42,23 @@ if settings.DEBUG or user=='': database_url = 'sqlite:///'+database_name +columndict = { + 'time':'TimeStamp (sec)', + 'hr':' HRCur (bpm)', + 'pace':' Stroke500mPace (sec/500m)', + 'spm':' Cadence (stokes/min)', + 'power':' Power (watts)', + 'averageforce':' AverageDriveForce (lbs)', + 'drivelength':' DriveLength (meters)', + 'peakforce':' PeakDriveForce (lbs)', + 'distance':' Horizontal (meters)', + 'catch':'catch', + 'finish':'finish', + 'peakforceangle':'peakforceangle', + 'wash':'wash', + 'slip':'wash', + } + from scipy.signal import savgol_filter import datetime @@ -267,23 +284,39 @@ def compare_data(id): print "Database Locked" conn.close() engine.dispose() - return l1==l2 + lfile = l1 + ldb = l2 + return l1==l2,ldb,lfile def repair_data(verbose=False): ws = Workout.objects.all() for w in ws: if verbose: sys.stdout.write(".") - if not compare_data(w.id): + test,ldb,lfile = compare_data(w.id) + if not test: if verbose: - print w.id + print w.id,lfile,ldb try: rowdata = rdata(w.csvfilename) if rowdata: update_strokedata(w.id,rowdata.df) except IOError, AttributeError: pass - + + if not lfile: + try: + data = read_df_sql(w.id) + data.rename(columns = columndict,inplace=True) + res = data.to_csv(w.csvfilename+'.gz', + index_label='index', + compression='gzip') + print 'adding csv file' + except: + print 'failed' + print str(sys.exc_info()[0]) + pass + def rdata(file,rower=rrower()): try: res = rrdata(file,rower=rower)