Private
Public Access
1
0

better selecting

This commit is contained in:
Sander Roosendaal
2020-10-21 15:32:07 +02:00
parent 82d1418bcb
commit 146d070cfd
3 changed files with 71 additions and 5 deletions

View File

@@ -1508,6 +1508,7 @@ def save_workout_database(f2, r, dosmooth=True, workouttype='rower',
workouts = Workout.objects.filter(
date__gte=firstdate,
workouttype__in=otwtypes,
user = w.user,
)
dd,cpcp,avgpower,workoutnames = fetchcp_new(r,workouts)
@@ -1541,6 +1542,7 @@ def save_workout_database(f2, r, dosmooth=True, workouttype='rower',
workouts = Workout.objects.filter(
date__gte=firstdate,
workouttype__in=otetypes,
user = w.user,
)
dd,cpcp,avgpower,workoutnames = fetchcp_new(r,workouts)
powerdf = pd.DataFrame({
@@ -2501,8 +2503,65 @@ def read_cols_df_sql_old(ids, columns, convertnewtons=True):
engine.dispose()
return df,extracols
# Read stroke data from the DB for a Workout ID. Returns a pandas dataframe
def initiate_cp(r):
firstdate = datetime.date.today()-datetime.timedelta(days=r.cprange)
workouts = Workout.objects.filter(
date__gte=firstdate,
workouttype__in = otwtypes,
user = r,
)
dd,cpcp,avgpower,workoutnames = fetchcp_new(r,workouts)
powerdf = pd.DataFrame({
'Delta':dd,
'CP':cpcp,
})
powerdf = powerdf[powerdf['CP']>0]
powerdf.dropna(axis=0,inplace=True)
powerdf.sort_values(['Delta','CP'],ascending=[1,0],inplace=True)
powerdf.drop_duplicates(subset='Delta',keep='first',inplace=True)
res2 = datautils.cpfit(powerdf)
if len(powerdf) != 0:
p1 = res2[0]
r.p0 = p1[0]
r.p1 = p1[1]
r.p2 = p1[2]
r.p3 = p1[3]
r.cpratio = res2[3]
r.save()
workouts = Workout.objects.filter(
date__gte = firstdate,
workouttype__in = otetypes,
user = r,
)
dd,cpcp,avgpower,workoutnames = fetchcp_new(r,workouts)
powerdf = pd.DataFrame({
'Delta':dd,
'CP':cpcp,
})
powerdf = powerdf[powerdf['CP']>0]
powerdf.dropna(axis=0,inplace=True)
powerdf.sort_values(['Delta','CP'],ascending=[1,0],inplace=True)
powerdf.drop_duplicates(subset='Delta',keep='first',inplace=True)
res2 = datautils.cpfit(powerdf)
if len(powerdf) != 0:
res = datautils.cpfit(powerdf)
p1 = res2[0]
r.ep0 = p1[0]
r.ep1 = p1[1]
r.ep2 = p1[2]
r.ep3 = p1[3]
r.ecpratio = res2[3]
r.save()
# Read stroke data from the DB for a Workout ID. Returns a pandas dataframe
def read_df_sql(id):
try:
f = 'media/strokedata_{id}.parquet.gz'.format(id=id)