2 Commity 5061002916 ... 793bc4375e

Autor SHA1 Wiadomość Data
  nixWorker 793bc4375e Updated test script 1 tydzień temu
  nixWorker a0db02555b Speeding up organ_percentile by looking up a set of participants only 1 tydzień temu
2 zmienionych plików z 45 dodań i 2 usunięć
  1. 20 2
      pythonScripts/organ_percentile.py
  2. 25 0
      pythonScripts/test.py

+ 20 - 2
pythonScripts/organ_percentile.py

@@ -67,18 +67,34 @@ def main(parameterFile):
     segVersion=pars['version']
     segVersion=pars['version']
     segVersionI=int(pars['versionNumber'])
     segVersionI=int(pars['versionNumber'])
 
 
+    participantField=pars['participantField']
+
     tempBase=pars['tempBase']
     tempBase=pars['tempBase']
     if not os.path.isdir(tempBase):
     if not os.path.isdir(tempBase):
         os.makedirs(tempBase)
         os.makedirs(tempBase)
     
     
-    participantField=pars['participantField']
+    qFilter=[]
+    try:
+        vList=';'.join(pars['participants'])
+        qFilter.append({'variable':participantField,'value':vList,'oper':'in'})
+    except KeyError:
+        pass
+    try:
+        vList=';'.join(pars['visits'])
+        qFilter.append({'variable':'visitCode','value':vList,'oper':'in'})
+    except KeyError:
+        pass
+
+
 
 
     #all images from database
     #all images from database
-    ds=db.selectRows(project,schema,dataset,[],view)
+    ds=db.selectRows(project,schema,dataset,qFilter,view)
     
     
     petField=pars['images']['PET']['queryField']
     petField=pars['images']['PET']['queryField']
     
     
     rows=ds['rows']
     rows=ds['rows']
+    print('Selected {} rows'.format(len(rows)))
+
     #rows=[ds['rows'][0]]
     #rows=[ds['rows'][0]]
 
 
     pv=numpy.concatenate((numpy.linspace(10,50,5),
     pv=numpy.concatenate((numpy.linspace(10,50,5),
@@ -145,6 +161,7 @@ def main(parameterFile):
         #4 thyroid
         #4 thyroid
         #5 bowel
         #5 bowel
         dsP=db.selectRows(project,schema,qQuery,[idFilter,visitFilter,vFilter])
         dsP=db.selectRows(project,schema,qQuery,[idFilter,visitFilter,vFilter])
+        print('Deleting {} rows'.format(len(dsP['rows'])))
         db.modifyRows('delete',project,schema,qQuery,dsP['rows'])
         db.modifyRows('delete',project,schema,qQuery,dsP['rows'])
         dspRows=[]
         dspRows=[]
         for level in [1,2,3,4,5,6,7,8]:
         for level in [1,2,3,4,5,6,7,8]:
@@ -172,6 +189,7 @@ def main(parameterFile):
                 rowDSP['value']=y
                 rowDSP['value']=y
                 rowDSP['organ']=level
                 rowDSP['organ']=level
                 dspRows.append(rowDSP)
                 dspRows.append(rowDSP)
+        print('Inserting {} rows'.format(len(dspRows)))
         db.modifyRows('insert',project,schema,qQuery,dspRows)
         db.modifyRows('insert',project,schema,qQuery,dspRows)
 
 
     
     

+ 25 - 0
pythonScripts/test.py

@@ -7,6 +7,31 @@ def main(parameterFile):
     fsetup=os.path.join(fhome,'.labkey','setup.json')
     fsetup=os.path.join(fhome,'.labkey','setup.json')
     with open(fsetup) as f:
     with open(fsetup) as f:
         setup=json.load(f)
         setup=json.load(f)
+    print('SETUP')
+    print(setup)
+
+    sys.path.append(setup['paths']['nixWrapper'])
+    import nixWrapper
+    nixWrapper.loadLibrary('labkeyInterface')
+
+    import labkeyInterface
+    import labkeyDatabaseBrowser
+
+    print('Loaded labkeyInterface')
+
+    with open(parameterFile) as f:
+        pars=json.load(f)
+
+    print('Parameters')
+    print(pars)
+
+    return 0
+
+def testLJUData(parameterFile):
+    fhome=os.path.expanduser('~')
+    fsetup=os.path.join(fhome,'.labkey','setup.json')
+    with open(fsetup) as f:
+        setup=json.load(f)
 
 
     sys.path.append(setup['paths']['labkeyInterface'])
     sys.path.append(setup['paths']['labkeyInterface'])
     import labkeyInterface
     import labkeyInterface