Template
simplified shell scripts and imporved multiple dataset notebook generation
This commit is contained in:
@@ -14,17 +14,6 @@ mkdir $1/${PLANE}_combined_$1
|
|||||||
#
|
#
|
||||||
popd
|
popd
|
||||||
|
|
||||||
DATE=$(./programs/dMoYr_yyyymmdd.py $1)
|
|
||||||
|
|
||||||
cp template_efis.ipynb ${PLANE}\ Data/flights/$1/${DATE}_efis.ipynb
|
|
||||||
cp template_ems.ipynb ${PLANE}\ Data/flights/$1/${DATE}_ems.ipynb
|
|
||||||
|
|
||||||
pushd ${PLANE}\ Data/flights/notebooks
|
|
||||||
#
|
|
||||||
ln -s ../${1}/${DATE}_efis.ipynb .
|
|
||||||
ln -s ../${1}/${DATE}_ems.ipynb .
|
|
||||||
#
|
|
||||||
popd
|
|
||||||
|
|
||||||
open ${PLANE}\ Data/flights/$1
|
open ${PLANE}\ Data/flights/$1
|
||||||
|
|
||||||
|
|||||||
@@ -8,11 +8,13 @@ processes all LOG0*.TXT files
|
|||||||
|
|
||||||
import glob
|
import glob
|
||||||
import os
|
import os
|
||||||
|
import subprocess
|
||||||
import argparse
|
import argparse
|
||||||
|
|
||||||
#PLANE="Nnumber"
|
#PLANE="Nnumber"
|
||||||
PLANE="N72KH"
|
PLANE="N72KH"
|
||||||
|
|
||||||
|
|
||||||
def prepare(date):
|
def prepare(date):
|
||||||
print("splitting logs")
|
print("splitting logs")
|
||||||
pathstring="../%s Data/flights/%s/%s_combined_%s/" %(PLANE,date,PLANE,date) # combined log
|
pathstring="../%s Data/flights/%s/%s_combined_%s/" %(PLANE,date,PLANE,date) # combined log
|
||||||
@@ -36,11 +38,13 @@ def prepare(date):
|
|||||||
os.system(cmd)
|
os.system(cmd)
|
||||||
|
|
||||||
def process(date,logs):
|
def process(date,logs):
|
||||||
|
num_datasets=0
|
||||||
if logs=='all' or logs=='ems':
|
if logs=='all' or logs=='ems':
|
||||||
print("processing EMS")
|
print("processing EMS")
|
||||||
#sp="../%s Data/flights/%s/%s_EIS_%s/" %(PLANE,date,PLANE,date) # GRT EIS
|
#sp="../%s Data/flights/%s/%s_EIS_%s/" %(PLANE,date,PLANE,date) # GRT EIS
|
||||||
pathstring="../%s Data/flights/%s/%s_EMS_%s/" %(PLANE,date,PLANE,date) # Dynon EMS
|
pathstring="../%s Data/flights/%s/%s_EMS_%s/" %(PLANE,date,PLANE,date) # Dynon EMS
|
||||||
fl=glob.glob(pathstring+"LOG0*.TXT")
|
fl=glob.glob(pathstring+"LOG0*.TXT")
|
||||||
|
num_datasets=len(fl)
|
||||||
for f in fl:
|
for f in fl:
|
||||||
fn=f.split("/")[-1].split(".")[0] # filename
|
fn=f.split("/")[-1].split(".")[0] # filename
|
||||||
# s="python ./eis_bin2csv.py '%s%s.TXT' > '%s%s.csv'" % (sp,fn,sp,fn) # GRT EIS
|
# s="python ./eis_bin2csv.py '%s%s.TXT' > '%s%s.csv'" % (sp,fn,sp,fn) # GRT EIS
|
||||||
@@ -51,6 +55,7 @@ def process(date,logs):
|
|||||||
print("processing EFIS")
|
print("processing EFIS")
|
||||||
pathstring="../%s Data/flights/%s/%s_EFIS_%s/" %(PLANE,date,PLANE,date)
|
pathstring="../%s Data/flights/%s/%s_EFIS_%s/" %(PLANE,date,PLANE,date)
|
||||||
fl=glob.glob(pathstring+"LOG0*.TXT")
|
fl=glob.glob(pathstring+"LOG0*.TXT")
|
||||||
|
num_datasets=len(fl)
|
||||||
for f in fl:
|
for f in fl:
|
||||||
fn=f.split("/")[-1].split(".")[0] # filename
|
fn=f.split("/")[-1].split(".")[0] # filename
|
||||||
cmd="python ./efis2csv.py '%s%s.TXT' > '%s%s.csv'" % (pathstring,fn,pathstring,fn)
|
cmd="python ./efis2csv.py '%s%s.TXT' > '%s%s.csv'" % (pathstring,fn,pathstring,fn)
|
||||||
@@ -60,6 +65,7 @@ def process(date,logs):
|
|||||||
print("processing GPS")
|
print("processing GPS")
|
||||||
pathstring="../%s Data/flights/%s/%s_GPS_%s/" %(PLANE,date,PLANE,date) # path
|
pathstring="../%s Data/flights/%s/%s_GPS_%s/" %(PLANE,date,PLANE,date) # path
|
||||||
fl=glob.glob(pathstring+"LOG0*.TXT") # file list
|
fl=glob.glob(pathstring+"LOG0*.TXT") # file list
|
||||||
|
num_datasets=len(fl)
|
||||||
for f in fl:
|
for f in fl:
|
||||||
fn=f.split("/")[-1].split(".")[0] # filename
|
fn=f.split("/")[-1].split(".")[0] # filename
|
||||||
s="python ./gps_formatter.py '%s%s.TXT' > '%s%s.csv'" % (pathstring,fn,pathstring,fn)
|
s="python ./gps_formatter.py '%s%s.TXT' > '%s%s.csv'" % (pathstring,fn,pathstring,fn)
|
||||||
@@ -68,6 +74,34 @@ def process(date,logs):
|
|||||||
#print s
|
#print s
|
||||||
os.system(cmd)
|
os.system(cmd)
|
||||||
|
|
||||||
|
return(num_datasets)
|
||||||
|
|
||||||
|
|
||||||
|
def create_notebooks(date, num_datasets):
|
||||||
|
FNDATE=subprocess.getoutput("python ./dMoYr_yyyymmdd.py %s" %(date))
|
||||||
|
# if there is more than one dataset, create the right number of notebooks
|
||||||
|
if (num_datasets > 1):
|
||||||
|
for i in range(0,num_datasets):
|
||||||
|
print("data set %d ipynb" %(i))
|
||||||
|
subprocess.getoutput('cp ../template_efis.ipynb "../%s Data/flights/%s/%s-%d_efis.ipynb"' % (PLANE,date,FNDATE,i))
|
||||||
|
subprocess.getoutput('cp ../template_ems.ipynb "../%s Data/flights/%s/%s-%d_ems.ipynb"' % (PLANE,date,FNDATE,i))
|
||||||
|
subprocess.getoutput('sed -i .bak "s/LOGNUM=LOGCOUNT-1/LOGNUM=%d/g" "../%s Data/flights/%s/%s-%d_efis.ipynb"' % (i,PLANE,date,FNDATE,i))
|
||||||
|
subprocess.getoutput('sed -i .bak "s/LOGNUM=LOGCOUNT-1/LOGNUM=%d/g" "../%s Data/flights/%s/%s-%d_ems.ipynb"' % (i,PLANE,date,FNDATE,i))
|
||||||
|
subprocess.getoutput('jupyter nbconvert --to notebook --execute "../%s Data/flights/%s/%s-%d_efis.ipynb"' % (PLANE,date,FNDATE,i))
|
||||||
|
subprocess.getoutput('jupyter nbconvert --to notebook --execute "../%s Data/flights/%s/%s-%d_ems.ipynb"' % (PLANE,date,FNDATE,i))
|
||||||
|
else: # single dataset
|
||||||
|
print("set up ipynb")
|
||||||
|
subprocess.getoutput('cp ../template_efis.ipynb "../%s Data/flights/%s/%s_efis.ipynb"' % (PLANE,date,FNDATE))
|
||||||
|
subprocess.getoutput('cp ../template_ems.ipynb "../%s Data/flights/%s/%s_ems.ipynb"' % (PLANE,date,FNDATE))
|
||||||
|
subprocess.getoutput('jupyter nbconvert --to notebook --execute "../%s Data/flights/%s/%s_efis.ipynb"' % (PLANE,date,FNDATE))
|
||||||
|
subprocess.getoutput('jupyter nbconvert --to notebook --execute "../%s Data/flights/%s/%s_ems.ipynb"' % (PLANE,date,FNDATE))
|
||||||
|
|
||||||
|
|
||||||
|
# link in notebooks folder:
|
||||||
|
# pushd ${PLANE}\ Data/flights/notebooks
|
||||||
|
# ln -s ../${1}/${DATE}_efis.ipynb .
|
||||||
|
# ln -s ../${1}/${DATE}_ems.ipynb .
|
||||||
|
# popd
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
parser = argparse.ArgumentParser(description='Process all log files')
|
parser = argparse.ArgumentParser(description='Process all log files')
|
||||||
@@ -79,7 +113,8 @@ def main():
|
|||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
|
||||||
prepare(args.date)
|
prepare(args.date)
|
||||||
process(args.date,args.logname)
|
num_datasets=process(args.date, args.logname)
|
||||||
|
create_notebooks(args.date, num_datasets)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -9,8 +9,5 @@ pushd ./programs/
|
|||||||
python walk_logs.py $1
|
python walk_logs.py $1
|
||||||
popd
|
popd
|
||||||
|
|
||||||
DATE=$(./programs/dMoYr_yyyymmdd.py $1)
|
|
||||||
|
|
||||||
jupyter nbconvert --to notebook --execute ${PLANE}\ Data/flights/$1/${DATE}_efis.ipynb
|
|
||||||
jupyter nbconvert --to notebook --execute ${PLANE}\ Data/flights/$1/${DATE}_ems.ipynb
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user