You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(267) |
Nov
(344) |
Dec
(119) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(23) |
Feb
(15) |
Mar
(16) |
Apr
(388) |
May
|
Jun
(4) |
Jul
|
Aug
|
Sep
(4) |
Oct
|
Nov
|
Dec
|
|
From: <all...@us...> - 2002-12-08 01:48:29
|
Update of /cvsroot/genex/genex-server In directory sc8-pr-cvs1:/tmp/cvs-serv19289 Modified Files: README Log Message: fixing the install docs Index: README =================================================================== RCS file: /cvsroot/genex/genex-server/README,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** README 18 Sep 2002 22:52:19 -0000 1.14 --- README 8 Dec 2002 01:48:25 -0000 1.15 *************** *** 175,182 **** The basic approach is, once having installed the parts above, cd to the directory formed by untarring the distribution tar file ! (GeneX-WWW-Installer-0.9.1 in this case), and running the ! install-all.pl script: ! /usr/bin/perl install-all.pl (the optional flag you might want to run is: --SLOW, which slows down --- 175,182 ---- The basic approach is, once having installed the parts above, cd to the directory formed by untarring the distribution tar file ! (genex-server-X.X.Xx-XXXX-XX-XX.tar.gz in this case), and running the ! Makefile, as: ! make (the optional flag you might want to run is: --SLOW, which slows down |
|
From: <all...@us...> - 2002-12-08 01:42:29
|
Update of /cvsroot/genex/genex-www/content In directory sc8-pr-cvs1:/tmp/cvs-serv18230/content Modified Files: menu.ssi Log Message: fixing CVS links Index: menu.ssi =================================================================== RCS file: /cvsroot/genex/genex-www/content/menu.ssi,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** menu.ssi 10 Nov 2002 02:27:54 -0000 1.13 --- menu.ssi 8 Dec 2002 01:42:26 -0000 1.14 *************** *** 40,44 **** Review the GeneX development timeline: 2002 </A><br> ! - <a href="http://sourceforge.net/cvs/?group_id=12416"> CVS repository </a><br> --- 40,44 ---- Review the GeneX development timeline: 2002 </A><br> ! - <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/genex/"> CVS repository </a><br> |
|
From: <ki...@us...> - 2002-12-07 00:41:35
|
Update of /cvsroot/genex/genex-server/python/bin In directory sc8-pr-cvs1:/tmp/cvs-serv550 Added Files: .cvsignore Log Message: usual --- NEW FILE: .cvsignore --- *.pyc *.class |
|
From: <ki...@us...> - 2002-12-07 00:40:52
|
Update of /cvsroot/genex/genex-server/python/Bio/Genex/Widgets In directory sc8-pr-cvs1:/tmp/cvs-serv32544 Added Files: .cvsignore Log Message: usual --- NEW FILE: .cvsignore --- *.pyc *.class |
|
From: <ki...@us...> - 2002-12-07 00:40:26
|
Update of /cvsroot/genex/genex-server/python/Bio/Genex/Parse In directory sc8-pr-cvs1:/tmp/cvs-serv32256 Added Files: .cvsignore Log Message: usual --- NEW FILE: .cvsignore --- *.pyc *.class |
|
From: <ki...@us...> - 2002-12-07 00:39:35
|
Update of /cvsroot/genex/genex-server/python/Bio/Genex In directory sc8-pr-cvs1:/tmp/cvs-serv31643 Added Files: .cvsignore Log Message: usual --- NEW FILE: .cvsignore --- *.pyc *.class |
|
From: <ki...@us...> - 2002-12-07 00:38:34
|
Update of /cvsroot/genex/genex-server/python/Bio In directory sc8-pr-cvs1:/tmp/cvs-serv30983 Added Files: .cvsignore Log Message: usual --- NEW FILE: .cvsignore --- *.pyc *.class |
|
From: <ki...@us...> - 2002-12-07 00:37:59
|
Update of /cvsroot/genex/genex-server/python In directory sc8-pr-cvs1:/tmp/cvs-serv30558 Added Files: .cvsignore Log Message: usual --- NEW FILE: .cvsignore --- *.pyc *.class |
|
From: <ki...@us...> - 2002-12-07 00:36:43
|
Update of /cvsroot/genex/genex-server/python
In directory sc8-pr-cvs1:/tmp/cvs-serv29230
Added Files:
setup.py
Log Message:
setup script which current install files to correct locations, but doesn't yet configure them properly (manually done for now).
--- NEW FILE: setup.py ---
#!/usr/bin/env python
###########################################################################
# #
# C O P Y R I G H T N O T I C E #
# Copyright (c) 2001 by: #
# * California Institute of Technology #
# #
# All Rights Reserved. #
# #
# Permission is hereby granted, free of charge, to any person #
# obtaining a copy of this software and associated documentation files #
# (the "Software"), to deal in the Software without restriction, #
# including without limitation the rights to use, copy, modify, merge, #
# publish, distribute, sublicense, and/or sell copies of the Software, #
# and to permit persons to whom the Software is furnished to do so, #
# subject to the following conditions: #
# #
# The above copyright notice and this permission notice shall be #
# included in all copies or substantial portions of the Software. #
# #
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, #
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF #
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND #
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS #
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN #
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN #
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE #
# SOFTWARE. #
###########################################################################
#
# Authors: Brandon King
# Last Modified: $Date: 2002/12/07 00:36:40 $
#
from distutils.core import setup
setup(name="BioGenex",
version="0.0.1",
description="BioGenex is a set of Python tools for interacting with the Genex 2.x database.",
author="Brandon King",
author_email="ki...@ca...",
url="http://genex.sourceforge.net/",
packages=["Bio",
"Bio.Genex",
"Bio.Genex.Widgets",
"Bio.Genex.Parse"],
data_files=[('/usr/local/genex/bin',
['bin/fixarray-gpr.py', 'bin/tab2ADgui.py',
'bin/fixarray-agilent.py'])])
|
|
From: <ki...@us...> - 2002-12-07 00:35:31
|
Update of /cvsroot/genex/genex-server/python/bin In directory sc8-pr-cvs1:/tmp/cvs-serv28654 Added Files: tab2ADgui.py Log Message: GUI for running tab2AD.pl --- NEW FILE: tab2ADgui.py --- #!/usr/bin/env python ########################################################################### # # # C O P Y R I G H T N O T I C E # # Copyright (c) 2002 by: # # * California Institute of Technology # # # # All Rights Reserved. # # # # Permission is hereby granted, free of charge, to any person # # obtaining a copy of this software and associated documentation files # # (the "Software"), to deal in the Software without restriction, # # including without limitation the rights to use, copy, modify, merge, # # publish, distribute, sublicense, and/or sell copies of the Software, # # and to permit persons to whom the Software is furnished to do so, # # subject to the following conditions: # # # # The above copyright notice and this permission notice shall be # # included in all copies or substantial portions of the Software. # # # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND # # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS # # BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN # # ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN # # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE # # SOFTWARE. # ########################################################################### # # Authors: Brandon King # Last Modified: $Date: 2002/12/07 00:35:29 $ # """ GUI which takes a tab delimited array design file and converts it to mage-ml using genex2's tab2AD.pl command line script. """ import Tkinter from Bio.Genex.Widgets import tab2AD #Main if __name__ == "__main__": #Create master Tk window root = Tkinter.Tk(className="tab2ADgui") #Launch GUI with master Tk window gui = tab2AD.tab2ADgui(root) #run Tk mainloop root.mainloop() |
|
From: <ki...@us...> - 2002-12-07 00:34:58
|
Update of /cvsroot/genex/genex-server/python/bin
In directory sc8-pr-cvs1:/tmp/cvs-serv27741
Added Files:
fixarray-genepix.py
Log Message:
Converts GPR files into Tab Delimited ArrayDesigns for tab2AD.pl
--- NEW FILE: fixarray-genepix.py ---
#!/usr/bin/env python
###########################################################################
# #
# C O P Y R I G H T N O T I C E #
# Copyright (c) 2001 by: #
# * California Institute of Technology #
# #
# All Rights Reserved. #
# #
# Permission is hereby granted, free of charge, to any person #
# obtaining a copy of this software and associated documentation files #
# (the "Software"), to deal in the Software without restriction, #
# including without limitation the rights to use, copy, modify, merge, #
# publish, distribute, sublicense, and/or sell copies of the Software, #
# and to permit persons to whom the Software is furnished to do so, #
# subject to the following conditions: #
# #
# The above copyright notice and this permission notice shall be #
# included in all copies or substantial portions of the Software. #
# #
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, #
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF #
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND #
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS #
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN #
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN #
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE #
# SOFTWARE. #
###########################################################################
#
# Authors: Brandon King
# Last Modified: $Date: 2002/12/07 00:34:55 $
#
from Bio.Genex.Parse import genepix
import getopt
import os
import sys
def parseCommandLine():
"""
Processes Command Line Arguments
return (source, inputModule, destination, outputModule)
"""
try:
opts, args = getopt.getopt(sys.argv[1:], "i:o:hg",
["inputFile=",
"outputFile=",
"help",
"gui"])
except getopt.GetoptError:
printUseage()
print "-------------------------------"
print "- Invalid Command Line Option -"
print "-------------------------------"
sys.exit(2)
if len(sys.argv) <= 1:
printUseage()
sys.exit(2)
for arg, val in opts:
if arg in ('-h', '--help'):
printUseage()
sys.exit()
if arg in ('-g', '--gui'):
#loadGUI()
print "GUI not implemented yet."
sys.exit()
if arg in ('-i', '--inputFile'):
if os.path.isfile(val):
inputFile = val
else:
inputFile = None
if arg in ('-o', '--outputModule'):
if len(val) > 0:
outputFile = val
else:
outputFile = None
print ""
try:
print "inputFile: %s" % (inputFile)
except UnboundLocalError:
inputFile = None
try:
print "outputFile: %s" % (outputFile)
except UnboundLocalError:
outputFile = None
print ""
msg = ""
if inputFile is None:
msg += "Error: No inputFile provided"
msg += os.linesep
if outputFile is None:
msg += "Error: No outputFile provided"
msg += os.linesep
if msg != "":
msg += "Suggestion: see \'fixarray-genepix.py --help\'"
msg += os.linesep
print msg
sys.exit(2)
return (inputFile, outputFile)
def printUseage():
useage = """
Welcome to fixarray-genepix.py
Useage:
fixarray-genepix.py -i [inputFile] -o [outputFile]
fixarray-genepix.py --inputFile=[gprFile] --outputFile=[ArrayDesignText]
Options:
-i, --inputFile=[foo] Location of input GPR file for processing
-o, --outputFile=[foo] Location to save tab-delmited ArrayDesign
-h, --help Displays this help page
"""
print useage
if __name__ == "__main__":
gprPath, savePath = parseCommandLine()
if gprPath == None or savePath == None:
print "Error: parseCommandLine() broken"
sys.exit(2)
print "Processing GPR File"
gpr = genepix.GPR(gprPath)
print "Saving ArrayDesign"
gpr.saveArrayDesign(savePath)
print "Done"
|
|
From: <ki...@us...> - 2002-12-07 00:33:44
|
Update of /cvsroot/genex/genex-server/python/bin
In directory sc8-pr-cvs1:/tmp/cvs-serv26971
Added Files:
fixarray-agilent.py
Log Message:
Agilent Tab Delimited to ArrayDesign Tab Delimited converter (needs work)
--- NEW FILE: fixarray-agilent.py ---
#!/usr/bin/env python
###########################################################################
# #
# C O P Y R I G H T N O T I C E #
# Copyright (c) 2001 by: #
# * California Institute of Technology #
# #
# All Rights Reserved. #
# #
# Permission is hereby granted, free of charge, to any person #
# obtaining a copy of this software and associated documentation files #
# (the "Software"), to deal in the Software without restriction, #
# including without limitation the rights to use, copy, modify, merge, #
# publish, distribute, sublicense, and/or sell copies of the Software, #
# and to permit persons to whom the Software is furnished to do so, #
# subject to the following conditions: #
# #
# The above copyright notice and this permission notice shall be #
# included in all copies or substantial portions of the Software. #
# #
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, #
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF #
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND #
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS #
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN #
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN #
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE #
# SOFTWARE. #
###########################################################################
#
# Authors: Brandon King
# Last Modified: $Date: 2002/12/07 00:33:41 $
#
from Bio.Genex.Parse import agilent
import getopt
import os
import sys
def parseCommandLine():
"""
Processes Command Line Arguments
return (source, inputModule, destination, outputModule)
"""
try:
opts, args = getopt.getopt(sys.argv[1:], "i:o:hg",
["inputFile=",
"outputFile=",
"help",
"gui"])
except getopt.GetoptError:
printUseage()
print "-------------------------------"
print "- Invalid Command Line Option -"
print "-------------------------------"
sys.exit(2)
if len(sys.argv) <= 1:
printUseage()
sys.exit(2)
for arg, val in opts:
if arg in ('-h', '--help'):
printUseage()
sys.exit()
if arg in ('-g', '--gui'):
#loadGUI()
print "GUI not implemented yet."
sys.exit()
if arg in ('-i', '--inputFile'):
if os.path.isfile(val):
inputFile = val
else:
inputFile = None
if arg in ('-o', '--outputModule'):
if len(val) > 0:
outputFile = val
else:
outputFile = None
print ""
try:
print "inputFile: %s" % (inputFile)
except UnboundLocalError:
inputFile = None
try:
print "outputFile: %s" % (outputFile)
except UnboundLocalError:
outputFile = None
print ""
msg = ""
if inputFile is None:
msg += "Error: No inputFile provided"
msg += os.linesep
if outputFile is None:
msg += "Error: No outputFile provided"
msg += os.linesep
if msg != "":
msg += "Suggestion: see \'fixarray-gpr.py --help\'"
msg += os.linesep
print msg
sys.exit(2)
return (inputFile, outputFile)
def printUseage():
useage = """
Welcome to fixarray-agilent.py
Useage:
fixarray-agilent.py -i [inputFile] -o [outputFile]
fixarray-agilent.py --inputFile=[agilentFile]
--outputFile=[ArrayDesignText]
Options:
-i, --inputFile=[foo] Location of input Agilent file for processing
-o, --outputFile=[foo] Location to save tab-delmited ArrayDesign
-h, --help Displays this help page
"""
print useage
if __name__ == "__main__":
aglPath, savePath = parseCommandLine()
if aglPath == None or savePath == None:
print "Error: parseCommandLine() broken"
sys.exit(2)
print "Processing Agilent File"
agl = agilent.AGL(aglPath)
print "Saving ArrayDesign"
agl.saveArrayDesign(savePath)
print "Done"
|
|
From: <ki...@us...> - 2002-12-07 00:30:34
|
Update of /cvsroot/genex/genex-server/python/Bio/Genex/Widgets
In directory sc8-pr-cvs1:/tmp/cvs-serv24999
Added Files:
tab2AD.py
Log Message:
GUI Widget for running tab2AD.pl
--- NEW FILE: tab2AD.py ---
#!/usr/bin/env python
###########################################################################
# #
# C O P Y R I G H T N O T I C E #
# Copyright (c) 2002 by: #
# * California Institute of Technology #
# #
# All Rights Reserved. #
# #
# Permission is hereby granted, free of charge, to any person #
# obtaining a copy of this software and associated documentation files #
# (the "Software"), to deal in the Software without restriction, #
# including without limitation the rights to use, copy, modify, merge, #
# publish, distribute, sublicense, and/or sell copies of the Software, #
# and to permit persons to whom the Software is furnished to do so, #
# subject to the following conditions: #
# #
# The above copyright notice and this permission notice shall be #
# included in all copies or substantial portions of the Software. #
# #
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, #
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF #
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND #
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS #
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN #
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN #
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE #
# SOFTWARE. #
###########################################################################
#
# Authors: Brandon King
# Last Modified: $Date: 2002/12/07 00:30:32 $
#
import os
import Tkinter
import tkFileDialog
import tkMessageBox
###################
# Config Variables
TAB2AD_APP_PATH = "/home/king/proj/genex2/genex-server/DB/scripts/tab2AD.pl"
class tab2ADgui:
"""
GUI for running tab2AD.pl
"""
def __init__(self, master):
"""
Initilizes GUI by taking in a master Tk window
"""
#####################
# Master Window & Frames
#Master Tk Window
self.master = master
#Title Frame -- For title label
self.titleFrame = Tkinter.Frame(master)
self.titleFrame.grid(row=0, padx=5, pady=5)
#Main Body Frame -- For Data Input
self.frame = Tkinter.Frame(master)
self.frame.grid(row=1, padx=5, pady=5)
#Bottom Frame -- For Launch Button
self.bottomFrame = Tkinter.Frame(master)
self.bottomFrame.grid(row=2, padx=5, pady=5)
#####################
# Class Variables
#Variables used to store final values to pass
# to tab2AD.pl
self.infilePath = None
self.outfilePath = None
self.ad_identifier = None
#####################
# Help Variables
self.help_infile = "\"Input File Path\" is that path to the "\
"tab-delimited file to read."
self.help_outfile = "\"Output File Path\" is the path where you"\
"would like to save the Array Design XML file."
self.help_ad_identifier = "The identifer which this Array Design "\
"will be called."
#####################
# Shortcut Keys
#FIXME: Add quit shorcut key
#self.frame.bind("<Button-1>", self.master.quit)
#####################
# Menu Bar
#Create Menu Bar
self.menuBar = Tkinter.Menu(master)
#Create File Menu
self.fileMenu = Tkinter.Menu(self.menuBar, tearoff=0)
#Add quit button to file menu
self.fileMenu.add_command(label="Quit", command=master.quit)
#Add file menu to menu bar
self.menuBar.add_cascade(label="File", menu=self.fileMenu)
#Display menu bar
master.config(menu=self.menuBar)
#####################
# Title Label
#Create title label
self.titleLabel = Tkinter.Label(self.titleFrame,
text="Tab Delimited 2 Array Design",
fg="blue",
font=("Times", 30))
self.titleLabel.grid(row=0)
#####################
# Array Design Identifier
#Create AD identifier label
self.ad_identifierLabel = Tkinter.Label(self.frame,
text="Array Design Identifier:")
self.ad_identifierLabel.grid(row=0, column=0)
#Create AD ident entry box
self.ad_identifierEntry = Tkinter.Entry(self.frame)
self.ad_identifierEntry.grid(row=0, column=1)
#Create Help Button
self.ad_identifierHelpButton = Tkinter.Button(self.frame,
bitmap="info",
command=self.ad_identifierHelp)
self.ad_identifierHelpButton.grid(row=0, column=3, padx=2)
#####################
# In File
#Create infile label
self.infileLabel = Tkinter.Label(self.frame, text="Input File Path:")
self.infileLabel.grid(row=1, column=0)
#Create infile entry box
self.infileEntry = Tkinter.Entry(self.frame)
self.infileEntry.grid(row=1, column=1)
#Create infile browse button
self.infileButton = Tkinter.Button(self.frame,
text="Browse",
command=self.getInFilePath)
self.infileButton.grid(row=1, column=2, padx=2)
#Create Help Button
self.infileHelpButton = Tkinter.Button(self.frame,
bitmap="info",
command=self.infileHelp)
self.infileHelpButton.grid(row=1, column=3, padx=1)
#####################
# Out File
#Create outfile label
self.outfileLabel = Tkinter.Label(self.frame, text="Output File Path:")
self.outfileLabel.grid(row=2, column=0)
#Create outfile entry box
self.outfileEntry = Tkinter.Entry(self.frame)
self.outfileEntry.grid(row=2, column=1)
#Create outfile browse button
self.outfileButton = Tkinter.Button(self.frame,
text="Browse",
command=self.getOutFilePath)
self.outfileButton.grid(row=2, column=2, padx=2)
#Create Help Button
self.outfileHelpButton = Tkinter.Button(self.frame,
bitmap="info",
command=self.outfileHelp)
self.outfileHelpButton.grid(row=2, column=3, padx=1)
#####################
# Launch Button
#Create launch button
self.launchButton = Tkinter.Button(self.bottomFrame,
text="Launch",
bg="green",
command=self.launch)
self.launchButton.grid(row=0, column=0)
def infileHelp(self):
tkMessageBox.showinfo("Infile Help", self.help_infile)
def outfileHelp(self):
tkMessageBox.showinfo("Infile Help", self.help_outfile)
def ad_identifierHelp(self):
tkMessageBox.showinfo("Infile Help", self.help_ad_identifier)
def getInFilePath(self):
"""
Launches file open dialog box and then retrieves path.
If the user selects cancel the dialog box returns "".
If the user selects a path the dialog box returns the path.
This function then inserts the path selected by the
user into the infile entry box
"""
path = None
#Ask user to select a file to open and save that path
path = tkFileDialog.askopenfilename(defaultextension=".txt",
filetypes=[("Tab Delimited Text","*.txt"), ("All Files", "*.*")],
parent=self.frame,
title="Choose Infile")
#Check to see if a path was entered
if path != None:
#Remove any text from entry box
self.infileEntry.delete(0, Tkinter.END)
#Insert new path in entry box
self.infileEntry.insert(0, path)
def getOutFilePath(self):
"""
Launches file saveas dialog box and then retrieves path.
If the user selects cancel the dialog box returns "".
If the user selects a path the dialog box returns the path.
This function then inserts the path selected by the
user into the outfile entry box
"""
path= None
path = tkFileDialog.asksaveasfilename(defaultextension=".xml",
filetypes=[("MAGE-ML", "*.xml")],
parent=self.frame,
title="Choose Outfile")
#Check to see if a path was entered
if path != None:
#Remove any text from entry box
self.outfileEntry.delete(0, Tkinter.END)
#Insert new path in entry box
self.outfileEntry.insert(0, path)
def launch(self):
#Retrive user entered values
self.infilePath = self.infileEntry.get()
self.outfilePath = self.outfileEntry.get()
self.ad_identifier = self.ad_identifierEntry.get()
#Error checking
if self.infilePath == None or self.infilePath == "":
return
if self.outfilePath == None or self.outfilePath == "":
return
if self.ad_identifier == None or self.ad_identifier == "":
return
#Create argument list for commandline
# requires first argument to be name of application
# to be run
argList = []
argList.append("%s" % (os.path.abspath("./tab2AD.pl")))
argList.append("--infile=%s" % (self.infilePath))
argList.append("--outfile=%s" % (self.outfilePath))
argList.append("--ad_identifier=%s" % (self.ad_identifier))
#Excute tab2AD.pl
os.execv(os.path.abspath(TAB2AD_APP_PATH), argList)
#Main
#if __name__ == "__main__":
#
# #Create master Tk window
# root = Tkinter.Tk(className="tab2ADgui")
#
# #Launch GUI with master Tk window
# gui = tab2ADgui(root)
#
# #run Tk mainloop
# root.mainloop()
|
|
From: <ki...@us...> - 2002-12-07 00:28:52
|
Update of /cvsroot/genex/genex-server/python/Bio/Genex/Widgets In directory sc8-pr-cvs1:/tmp/cvs-serv24051 Added Files: __init__.py Log Message: GUI Widgets --- NEW FILE: __init__.py --- #!/usr/bin/env python ########################################################################### # # # C O P Y R I G H T N O T I C E # # Copyright (c) 2001 by: # # * California Institute of Technology # # # # All Rights Reserved. # # # # Permission is hereby granted, free of charge, to any person # # obtaining a copy of this software and associated documentation files # # (the "Software"), to deal in the Software without restriction, # # including without limitation the rights to use, copy, modify, merge, # # publish, distribute, sublicense, and/or sell copies of the Software, # # and to permit persons to whom the Software is furnished to do so, # # subject to the following conditions: # # # # The above copyright notice and this permission notice shall be # # included in all copies or substantial portions of the Software. # # # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND # # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS # # BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN # # ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN # # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE # # SOFTWARE. # ########################################################################### # # Authors: Brandon King # Last Modified: $Date: 2002/12/07 00:28:49 $ # |
|
From: <ki...@us...> - 2002-12-07 00:28:08
|
Update of /cvsroot/genex/genex-server/python/Bio/Genex/Parse
In directory sc8-pr-cvs1:/tmp/cvs-serv23548
Added Files:
genepix.py
Log Message:
GenePix GPR parser
--- NEW FILE: genepix.py ---
#!/usr/bin/env python
###########################################################################
# #
# C O P Y R I G H T N O T I C E #
# Copyright (c) 2001 by: #
# * California Institute of Technology #
# #
# All Rights Reserved. #
# #
# Permission is hereby granted, free of charge, to any person #
# obtaining a copy of this software and associated documentation files #
# (the "Software"), to deal in the Software without restriction, #
# including without limitation the rights to use, copy, modify, merge, #
# publish, distribute, sublicense, and/or sell copies of the Software, #
# and to permit persons to whom the Software is furnished to do so, #
# subject to the following conditions: #
# #
# The above copyright notice and this permission notice shall be #
# included in all copies or substantial portions of the Software. #
# #
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, #
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF #
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND #
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS #
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN #
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN #
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE #
# SOFTWARE. #
###########################################################################
#
# Authors: Diane Trout
# Modifications By: Brandon King
# Last Modified: $Date: 2002/12/07 00:28:05 $
#
import re
import sys
import string
class GPRrow:
def __init__(self, text=None):
if text is None:
self.InitToNone()
else:
self.ParseRow(text)
def InitToNone(self):
self.Block = None
self.Column = None
self.Row = None
self.Name = None
self.ID = None
self.X = None
self.Y = None
self.Diameter = None
self.F635Median = None
self.F635Mean = None
self.F635SD = None
self.B635Median = None
self.B635Mean = None
self.B635SD = None
self.PercentgtB635plus1SD = None
self.PercentgtB635plus2SD = None
self.F635percentSat = None
self.F532Median = None
self.F532Mean = None
self.F532SD = None
self.B532Median = None
self.B532Mean = None
self.B532SD = None
self.Percentgtb532plus1SD = None
self.Percentgtb532plus2SD = None
self.F532percentSat = None
self.RatioOfMedians = None
self.RatioOfMeans = None
self.MedianOfRatios = None
self.MeanOfRatios = None
self.RatiosSD = None
self.RgnRatio = None
self.RgnR2 = None
self.FPixels = None
self.BPixels = None
self.SumOfMedians = None
self.SumOfMeans = None
self.LogRatio = None
self.F635MedianMinusB635 = None
self.F532MedianMinusB532 = None
self.F635MeanMinusB635 = None
self.F532MeanMinusB532 = None
self.Flags = None
def ParseRow(self, row_text):
row_tuple = re.split("\t", row_text)
try:
self.Block = int(row_tuple[0])
except:
self.Block = None
print "Error: (int)Block = %s" % (row_tuple[0])
try:
self.Column = int(row_tuple[1])
except:
self.Column = None
print "Error: (int)Column = %s" % (row_tuple[1])
try:
self.Row = int(row_tuple[2])
except:
self.Row = None
print "Error: (int)Row = %s" % (row_tuple[2])
self.Name = row_tuple[3]
self.ID = row_tuple[4]
try:
self.X = int(row_tuple[5])
except:
self.X = None
print "Error: (int)X = %s" % (row_tuple[5])
try:
self.Y = int(row_tuple[6])
except:
self.Y = None
print "Error: (int)Y = %s" % (row_tuple[5])
try:
self.Diameter = int(row_tuple[7])
except:
self.Diameter = None
print "Error: (int)Diameter = %s" % (row_tuple[7])
try:
self.F635Median = float(row_tuple[8])
except:
self.F635Median = None
print "Error: (float)F635Median = %s" % (row_tuple[8])
try:
self.F635Mean = float(row_tuple[9])
except:
self.F635Mean = None
print "Error: (float)F635Mean = %s" % (row_tuple[9])
try:
self.F635SD = float(row_tuple[10])
except:
self.F635SD = None
print "Error: (float)F635SD = %s" % (row_tuple[10])
try:
self.B635Median = float(row_tuple[11])
except:
self.B635Median = None
print "Error: (float)B635Median = %s" % (row_tuple[11])
try:
self.B635Mean = float(row_tuple[12])
except:
self.B635Mean = None
print "Error: (float)B635Mean = %s" % (row_tuple[12])
try:
self.B635SD = float(row_tuple[13])
except:
self.B635SD = None
print "Error: (float)B635SD = %s" % (row_tuple[13])
try:
self.PercentgtB635plus1SD = float(row_tuple[14])
except:
self.PercentgtB635plus1SD = None
print "Error: (float)PercentgtB635plus1SD = %s" % (row_tuple[14])
try:
self.PercentgtB635plus2SD = float(row_tuple[15])
except:
self.PercentgtB635plus2SD = None
print "Error: (float)PercentgtB635plus2SD = %s" % (row_tuple[15])
try:
self.F635percentSat = float(row_tuple[16])
except:
self.F635percentSat = None
print "Error: (float)F635percentSat = %s" % (row_tuple[16])
try:
self.F532Median = float(row_tuple[17])
except:
self.F532Median = None
print "Error: (float)F532Median = %s" % (row_tuple[17])
try:
self.F532Mean = float(row_tuple[18])
except:
self.F532Mean = None
print "Error: (float)F532Mean = %s" % (row_tuple[18])
try:
self.F532SD = float(row_tuple[19])
except:
self.F532SD = None
print "Error: (float)F532SD = %s" % (row_tuple[19])
try:
self.B532Median = float(row_tuple[20])
except:
self.B532Median = None
print "Error: (float)B532Median = %s" % (row_tuple[20])
try:
self.B532Mean = float(row_tuple[21])
except:
self.B532Mean = None
print "Error: (float)B532Mean = %s" % (row_tuple[21])
try:
self.B532SD = float(row_tuple[22])
except:
self.B532SD = None
print "Error: (float)B532SD = %s" % (row_tuple[22])
try:
self.Percentgtb532plus1SD = float(row_tuple[23])
except:
self.Percentgtb532plus1SD = None
print "Error: (float)Percentgtb532plus1SD = %s" % (row_tuple[23])
try:
self.Percentgtb532plus2SD = float(row_tuple[24])
except:
self.Percentgtb532plus2SD = None
print "Error: (float)Percentgtb532plus2SD = %s" % (row_tuple[24])
try:
self.F532percentSat = float(row_tuple[25])
except:
self.F532percentSat = None
print "Error: (float)F532percentSat = %s" % (row_tuple[25])
try:
self.RatioOfMedians = float(row_tuple[26])
except:
self.RatioOfMedians = None
print "Error: (float)RatioOfMedians = %s" % (row_tuple[26])
try:
self.RatioOfMeans = float(row_tuple[27])
except:
self.RatioOfMeans = None
print "Error: (float)RatioOfMeans = %s" % (row_tuple[27])
try:
self.MedianOfRatios = float(row_tuple[28])
except:
self.MedianOfRatios = None
print "Error: (float)MedianOfRatios = %s" % (row_tuple[28])
try:
self.MeanOfRatios = float(row_tuple[29])
except:
self.MeanOfRatios = None
print "Error: (float)MeanOfRatios = %s" % (row_tuple[29])
try:
self.RatiosSD = float(row_tuple[30])
except:
self.RatiosSD = None
print "Error: (float)RatiosSD = %s" % (row_tuple[30])
try:
self.RgnRatio = float(row_tuple[31])
except:
self.RgnRatio = None
print "Error: (float)RgnRatio = %s" % (row_tuple[31])
try:
self.RgnR2 = float(row_tuple[32])
except:
self.RgnR2 = None
print "Error: (float)RgnR2 = %s" % (row_tuple[32])
try:
self.FPixels = float(row_tuple[33])
except:
self.FPixels = None
print "Error: (float)FPixels = %s" % (row_tuple[33])
try:
self.BPixels = float(row_tuple[34])
except:
self.BPixels = None
print "Error: (float)BPixels = %s" % (row_tuple[34])
try:
self.SumOfMedians = float(row_tuple[35])
except:
self.SumOfMedians = None
print "Error: (float)SumOfMedians = %s" % (row_tuple[35])
try:
self.SumOfMeans = float(row_tuple[36])
except:
self.SumOfMeans = None
print "Error: (float)SumOfMeans = %s" % (row_tuple[36])
try:
self.LogRatio = row_tuple[37]
self.F635MedianMinusB635 = float(row_tuple[38])
except:
self.F635MedianMinusB635 = None
print "Error: (float)F635MedianMinusB635 = %s" % (row_tuple[38])
try:
self.F532MedianMinusB532 = float(row_tuple[39])
except:
self.F532MedianMinusB532 = None
print "Error: (float)F532MedianMinusB532 = %s" % (row_tuple[39])
try:
self.F635MeanMinusB635 = float(row_tuple[40])
except:
self.F635MeanMinusB635 = None
print "Error: (float)F635MeanMinusB635 = %s" % (row_tuple[40])
try:
self.F532MeanMinusB532 = float(row_tuple[41])
except:
self.F532MeanMinusB532 = None
print "Error: (float)F532MeanMinusB532 = %s" % (row_tuple[41])
try:
self.Flags = float(row_tuple[42])
except:
self.Flags = None
#print "Error: (float)Flags = %s" % (row_tuple[42])
def __str__(self):
text = str(self.Block)
text = text +"\t" + str(self.Column)
text = text +"\t" + str(self.Row)
text = text +"\t" + str(self.Name)
text = text +"\t" + str(self.ID)
text = text +"\t" + str(self.X)
text = text +"\t" + str(self.Y)
text = text +"\t" + str(self.Diameter)
text = text +"\t" + str(self.F635Median)
text = text +"\t" + str(self.F635Mean)
text = text +"\t" + str(self.F635SD)
text = text +"\t" + str(self.B635Median)
text = text +"\t" + str(self.B635Mean)
text = text +"\t" + str(self.B635SD)
text = text +"\t" + str(self.PercentgtB635plus1SD)
text = text +"\t" + str(self.PercentgtB635plus2SD)
text = text +"\t" + str(self.F635percentSat)
text = text +"\t" + str(self.F532Median)
text = text +"\t" + str(self.F532Mean)
text = text +"\t" + str(self.F532SD)
text = text +"\t" + str(self.B532Median)
text = text +"\t" + str(self.B532Mean)
text = text +"\t" + str(self.B532SD)
text = text +"\t" + str(self.Percentgtb532plus1SD)
text = text +"\t" + str(self.Percentgtb532plus2SD)
text = text +"\t" + str(self.F532percentSat)
text = text +"\t" + str(self.RatioOfMedians)
text = text +"\t" + str(self.RatioOfMeans)
text = text +"\t" + str(self.MedianOfRatios)
text = text +"\t" + str(self.MeanOfRatios)
text = text +"\t" + str(self.RatiosSD)
text = text +"\t" + str(self.RgnRatio)
text = text +"\t" + str(self.RgnR2)
text = text +"\t" + str(self.FPixels)
text = text +"\t" + str(self.BPixels)
text = text +"\t" + str(self.SumOfMedians)
text = text +"\t" + str(self.SumOfMeans)
text = text +"\t" + str(self.LogRatio)
text = text +"\t" + str(self.F635MedianMinusB635)
text = text +"\t" + str(self.F532MedianMinusB532)
text = text +"\t" + str(self.F635MeanMinusB635)
text = text +"\t" + str(self.F532MeanMinusB532)
text = text +"\t" + str(self.Flags)
return text
class GPR:
def __init__(self, filename = None):
"""construct a class from a gpr file.
perhaps in the future there should be some kind of castGRR?
"""
self.headers = None
self.data = None
if filename is not None:
self.load(filename)
def load(self, filename):
# FIXME: Perhapse the parse code should work on a line at a time
# FIXME: sw we can use xreadlines instead. (which reads line at a time
# FIXME: instead of the whole file.
print "loading"
f = open(filename, "r")
data = f.readlines()
f.close()
self.parse(data)
def parse(self, data):
print "parsing"
block_re = re.compile("Block")
# skip header information
column_header = None
num_lines = len(data)
for index in range(num_lines):
if block_re.search(data[index]):
column_header = index
break
else:
print "Couldn't find the header information"
return
self.headers = data[0:column_header+1]
self.rows = []
for row_index in xrange(column_header+1, num_lines):
try:
self.rows.append(GPRrow(data[row_index]))
except ValueError, e:
print "Error line %d: %s" % (row_index, data[row_index])
def save(self, filename):
"""given a GPR class and a filename save a copy of the GPR file.
"""
f = open(filename, "w")
for h in self.headers:
f.write(h)
for r in self.rows:
f.write(str(r)+"\n")
f.close()
def getArrayDesign(self):
newList = ["# ID\tBlock\tBlock\tRow\tColumn\tName"]
for row in self.rows:
newRow = []
ID = "%s.%s.%s.%s" % (row.Block, row.Block, row.Column, row.Row)
newRow.append(ID)
newRow.append(str(row.Block))
newRow.append(str(row.Block))
newRow.append(str(row.Row))
newRow.append(str(row.Column))
newRow.append(str(row.ID))
newRow = string.join(newRow, '\t')
newList.append(newRow)
return string.join(newList, '\n')
def saveArrayDesign(self, filePath):
data = self.getArrayDesign()
f = open(filePath, 'w')
f.write(data)
f.close()
|
|
From: <ki...@us...> - 2002-12-07 00:26:07
|
Update of /cvsroot/genex/genex-server/python/Bio/Genex/Parse
In directory sc8-pr-cvs1:/tmp/cvs-serv22129
Added Files:
agilent.py
Log Message:
Agilent Tab Delimited Text Parser
--- NEW FILE: agilent.py ---
#!/usr/bin/env python
###########################################################################
# #
# C O P Y R I G H T N O T I C E #
# Copyright (c) 2001 by: #
# * California Institute of Technology #
# #
# All Rights Reserved. #
# #
# Permission is hereby granted, free of charge, to any person #
# obtaining a copy of this software and associated documentation files #
# (the "Software"), to deal in the Software without restriction, #
# including without limitation the rights to use, copy, modify, merge, #
# publish, distribute, sublicense, and/or sell copies of the Software, #
# and to permit persons to whom the Software is furnished to do so, #
# subject to the following conditions: #
# #
# The above copyright notice and this permission notice shall be #
# included in all copies or substantial portions of the Software. #
# #
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, #
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF #
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND #
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS #
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN #
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN #
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE #
# SOFTWARE. #
###########################################################################
#
# Authors: Brandon King
# Note: Based off of Diane Trout's parseGPR.py
# Last Modified: $Date: 2002/12/07 00:26:04 $
#
import re
import sys
import string
class AGLrow:
def __init__(self, text=None):
if text is None:
self.InitToNone()
else:
self.ParseRow(text)
def InitToNone(self):
self.TYPE = None
self.FeatureNum = None
self.Row = None
self.Col = None
self.num96_Col = None
self.num96_Loc = None
self.Pass = None
self.num96_Plate_Order = None
self.unigene_code = None
self.Flexplate = None
self.num96_Row = None
self.Zone = None
self.Well = None
self.ProbeUID = None
self.ControlType = None
self.ProbeName = None
self.GeneName = None
self.SystematicName = None
self.Description = None
self.PositionX = None
self.PositionY = None
self.LogRatio = None
self.LogRatioError = None
self.PValueLogRatio = None
self.gSurrogateUsed = None
self.rSurrogateUsed = None
self.gIsFound = None
self.rIsFound = None
self.gProcessedSignal = None
self.rProcessedSignal = None
self.gProcessedSigError = None
self.rProcessedSigError = None
self.gNumPixOLHi = None
self.rNumPixOLHi = None
self.gNumPixOLLo = None
self.rNumPixOLLo = None
self.gNumPix = None
self.rNumPix = None
self.gMeanSignal = None
self.rMeanSignal = None
self.gMedianSignal = None
self.rMedianSignal = None
self.gPixSDev = None
self.rPixSDev = None
self.gBGNumPix = None
self.rBGNumPix = None
self.gBGMeanSignal = None
self.rBGMeanSignal = None
self.gBGMedianSignal = None
self.rBGMedianSignal = None
self.gBGPixSDev = None
self.rBGPixSDev = None
self.gNumSatPix = None
self.rNumSatPix = None
self.gIsSaturated = None
self.rIsSaturated = None
self.PixCorrelation = None
self.BGPixCorrelation = None
self.gIsFeatNonUnifOL = None
self.rIsFeatNonUnifOL = None
self.gIsBGNonUnifOL = None
self.rIsBGNonUnifOL = None
self.gIsFeatPopnOL = None
self.rIsFeatPopnOL = None
self.gIsBGPopnOL = None
self.rIsBGPopnOL = None
self.IsManualFlag = None
self.gBGSubSignal = None
self.rBGSubSignal = None
self.gBGSubSigError = None
self.rBGSubSigError = None
self.BGSubSigCorrelation = None
self.gIsPosAndSignif = None
self.rIsPosAndSignif = None
self.gPValFeatEqBG = None
self.rPValFeatEqBG = None
self.gNumBGUsed = None
self.rNumBGUsed = None
self.gIsWellAboveBG = None
self.rIsWellAboveBG = None
self.IsUsedBGAdjust = None
self.gBGUsed = None
self.rBGUsed = None
self.gBGSDUsed = None
self.rBGSDUsed = None
self.IsNormalization = None
self.gDyeNormSignal = None
self.rDyeNormSignal = None
self.gDyeNormError = None
self.rDyeNormError = None
self.DyeNormCorrelation = None
self.ErrorModel = None
def ParseRow(self, row_text):
row_tuple = re.split("\t", row_text)
self.TYPE = str(row_tuple[0])
self.FeatureNum = int(row_tuple[1])
self.Row = int(row_tuple[2])
self.Col = int(row_tuple[3])
self.num96_Col = str(row_tuple[4])
self.num96_Loc = str(row_tuple[5])
self.Pass = str(row_tuple[6])
self.num96_Plate_Order = str(row_tuple[7])
self.unigene_code = str(row_tuple[8])
self.Flexplate = str(row_tuple[9])
self.num96_Row = str(row_tuple[10])
self.Zone = str(row_tuple[11])
self.Well = str(row_tuple[12])
self.ProbeUID = int(row_tuple[13])
self.ControlType = int(row_tuple[14])
self.ProbeName = str(row_tuple[15])
self.GeneName = str(row_tuple[16])
self.SystematicName = str(row_tuple[17])
self.Description = str(row_tuple[18])
self.PositionX = float(row_tuple[19])
self.PositionY = float(row_tuple[20])
self.LogRatio = float(row_tuple[21])
self.LogRatioError = float(row_tuple[22])
self.PValueLogRatio = float(row_tuple[23])
self.gSurrogateUsed = float(row_tuple[24])
self.rSurrogateUsed = float(row_tuple[25])
self.gIsFound = int(row_tuple[26])
self.rIsFound = int(row_tuple[27])
self.gProcessedSignal = float(row_tuple[28])
self.rProcessedSignal = float(row_tuple[29])
self.gProcessedSigError = float(row_tuple[30])
self.rProcessedSigError = float(row_tuple[31])
self.gNumPixOLHi = int(row_tuple[32])
self.rNumPixOLHi = int(row_tuple[33])
self.gNumPixOLLo = int(row_tuple[34])
self.rNumPixOLLo = int(row_tuple[35])
self.gNumPix = int(row_tuple[36])
self.rNumPix = int(row_tuple[37])
self.gMeanSignal = float(row_tuple[38])
self.rMeanSignal = float(row_tuple[39])
self.gMedianSignal = float(row_tuple[40])
self.rMedianSignal = float(row_tuple[41])
self.gPixSDev = float(row_tuple[42])
self.rPixSDev = float(row_tuple[43])
self.gBGNumPix = int(row_tuple[44])
self.rBGNumPix = int(row_tuple[45])
self.gBGMeanSignal = float(row_tuple[46])
self.rBGMeanSignal = float(row_tuple[47])
self.gBGMedianSignal = float(row_tuple[48])
self.rBGMedianSignal = float(row_tuple[49])
self.gBGPixSDev = float(row_tuple[50])
self.rBGPixSDev = float(row_tuple[51])
self.gNumSatPix = int(row_tuple[52])
self.rNumSatPix = int(row_tuple[53])
self.gIsSaturated = int(row_tuple[54])
self.rIsSaturated = int(row_tuple[55])
self.PixCorrelation = float(row_tuple[56])
self.BGPixCorrelation = float(row_tuple[57])
self.gIsFeatNonUnifOL = int(row_tuple[58])
self.rIsFeatNonUnifOL = int(row_tuple[59])
self.gIsBGNonUnifOL = int(row_tuple[60])
self.rIsBGNonUnifOL = int(row_tuple[61])
self.gIsFeatPopnOL = int(row_tuple[62])
self.rIsFeatPopnOL = int(row_tuple[63])
self.gIsBGPopnOL = int(row_tuple[64])
self.rIsBGPopnOL = int(row_tuple[65])
self.IsManualFlag = int(row_tuple[66])
self.gBGSubSignal = float(row_tuple[67])
self.rBGSubSignal = float(row_tuple[68])
self.gBGSubSigError = float(row_tuple[69])
self.rBGSubSigError = float(row_tuple[70])
self.BGSubSigCorrelation = float(row_tuple[71])
self.gIsPosAndSignif = int(row_tuple[72])
self.rIsPosAndSignif = int(row_tuple[73])
self.gPValFeatEqBG = float(row_tuple[74])
self.rPValFeatEqBG = float(row_tuple[75])
self.gNumBGUsed = int(row_tuple[76])
self.rNumBGUsed = int(row_tuple[77])
self.gIsWellAboveBG = int(row_tuple[78])
self.rIsWellAboveBG = int(row_tuple[79])
self.IsUsedBGAdjust = float(row_tuple[80])
self.gBGUsed = float(row_tuple[81])
self.rBGUsed = float(row_tuple[82])
self.gBGSDUsed = float(row_tuple[83])
self.rBGSDUsed = float(row_tuple[84])
self.IsNormalization = int(row_tuple[85])
self.gDyeNormSignal = float(row_tuple[86])
self.rDyeNormSignal = float(row_tuple[87])
self.gDyeNormError = float(row_tuple[88])
self.rDyeNormError = float(row_tuple[89])
self.DyeNormCorrelation = float(row_tuple[90])
self.ErrorModel = int(row_tuple[91])
def __str__(self):
text = ""
text = text + "\t" + str(self.TYPE)
text = text + "\t" + str(self.FeatureNum)
text = text + "\t" + str(self.Row)
text = text + "\t" + str(self.Col)
text = text + "\t" + str(self.num96_Col)
text = text + "\t" + str(self.num96_Loc)
text = text + "\t" + str(self.Pass)
text = text + "\t" + str(self.num96_Plate_Order)
text = text + "\t" + str(self.unigene_code)
text = text + "\t" + str(self.Flexplate)
text = text + "\t" + str(self.num96_Row)
text = text + "\t" + str(self.Zone)
text = text + "\t" + str(self.Well)
text = text + "\t" + str(self.ProbeUID)
text = text + "\t" + str(self.ControlType)
text = text + "\t" + str(self.ProbeName)
text = text + "\t" + str(self.GeneName)
text = text + "\t" + str(self.SystematicName)
text = text + "\t" + str(self.Description)
text = text + "\t" + str(self.PositionX)
text = text + "\t" + str(self.PositionY)
text = text + "\t" + str(self.LogRatio)
text = text + "\t" + str(self.LogRatioError)
text = text + "\t" + str(self.PValueLogRatio)
text = text + "\t" + str(self.gSurrogateUsed)
text = text + "\t" + str(self.rSurrogateUsed)
text = text + "\t" + str(self.gIsFound)
text = text + "\t" + str(self.rIsFound)
text = text + "\t" + str(self.gProcessedSignal)
text = text + "\t" + str(self.rProcessedSignal)
text = text + "\t" + str(self.gProcessedSigError)
text = text + "\t" + str(self.rProcessedSigError)
text = text + "\t" + str(self.gNumPixOLHi)
text = text + "\t" + str(self.rNumPixOLHi)
text = text + "\t" + str(self.gNumPixOLLo)
text = text + "\t" + str(self.rNumPixOLLo)
text = text + "\t" + str(self.gNumPix)
text = text + "\t" + str(self.rNumPix)
text = text + "\t" + str(self.gMeanSignal)
text = text + "\t" + str(self.rMeanSignal)
text = text + "\t" + str(self.gMedianSignal)
text = text + "\t" + str(self.rMedianSignal)
text = text + "\t" + str(self.gPixSDev)
text = text + "\t" + str(self.rPixSDev)
text = text + "\t" + str(self.gBGNumPix)
text = text + "\t" + str(self.rBGNumPix)
text = text + "\t" + str(self.gBGMeanSignal)
text = text + "\t" + str(self.rBGMeanSignal)
text = text + "\t" + str(self.gBGMedianSignal)
text = text + "\t" + str(self.rBGMedianSignal)
text = text + "\t" + str(self.gBGPixSDev)
text = text + "\t" + str(self.rBGPixSDev)
text = text + "\t" + str(self.gNumSatPix)
text = text + "\t" + str(self.rNumSatPix)
text = text + "\t" + str(self.gIsSaturated)
text = text + "\t" + str(self.rIsSaturated)
text = text + "\t" + str(self.PixCorrelation)
text = text + "\t" + str(self.BGPixCorrelation)
text = text + "\t" + str(self.gIsFeatNonUnifOL)
text = text + "\t" + str(self.rIsFeatNonUnifOL)
text = text + "\t" + str(self.gIsBGNonUnifOL)
text = text + "\t" + str(self.rIsBGNonUnifOL)
text = text + "\t" + str(self.gIsFeatPopnOL)
text = text + "\t" + str(self.rIsFeatPopnOL)
text = text + "\t" + str(self.gIsBGPopnOL)
text = text + "\t" + str(self.rIsBGPopnOL)
text = text + "\t" + str(self.IsManualFlag)
text = text + "\t" + str(self.gBGSubSignal)
text = text + "\t" + str(self.rBGSubSignal)
text = text + "\t" + str(self.gBGSubSigError)
text = text + "\t" + str(self.rBGSubSigError)
text = text + "\t" + str(self.BGSubSigCorrelation)
text = text + "\t" + str(self.gIsPosAndSignif)
text = text + "\t" + str(self.rIsPosAndSignif)
text = text + "\t" + str(self.gPValFeatEqBG)
text = text + "\t" + str(self.rPValFeatEqBG)
text = text + "\t" + str(self.gNumBGUsed)
text = text + "\t" + str(self.rNumBGUsed)
text = text + "\t" + str(self.gIsWellAboveBG)
text = text + "\t" + str(self.rIsWellAboveBG)
text = text + "\t" + str(self.IsUsedBGAdjust)
text = text + "\t" + str(self.gBGUsed)
text = text + "\t" + str(self.rBGUsed)
text = text + "\t" + str(self.gBGSDUsed)
text = text + "\t" + str(self.rBGSDUsed)
text = text + "\t" + str(self.IsNormalization)
text = text + "\t" + str(self.gDyeNormSignal)
text = text + "\t" + str(self.rDyeNormSignal)
text = text + "\t" + str(self.gDyeNormError)
text = text + "\t" + str(self.rDyeNormError)
text = text + "\t" + str(self.DyeNormCorrelation)
text = text + "\t" + str(self.ErrorModel)
return text
class AGL:
def __init__(self, filename = None):
"""construct a class from a aglient text file.
perhaps in the future there should be some kind of castGRR?
"""
self.headers = None
self.data = None
if filename is not None:
self.load(filename)
def load(self, filename):
# FIXME: Perhapse the parse code should work on a line at a time
# FIXME: sw we can use xreadlines instead. (which reads line at a time
# FIXME: instead of the whole file.
print "loading"
f = open(filename, "r")
data = f.readlines()
f.close()
self.parse(data)
def parse(self, data):
print "parsing"
block_re = re.compile("FEATURES")
# skip header information
column_header = None
num_lines = len(data)
for index in range(num_lines):
if block_re.search(data[index]):
column_header = index
break
else:
print "Couldn't find the header information"
return
self.headers = data[0:column_header+1]
self.rows = []
for row_index in xrange(column_header+1, num_lines):
try:
self.rows.append(AGLrow(data[row_index]))
except ValueError, e:
print "Error line %d: %s" % (row_index, data[row_index])
def save(self, filename):
"""given a AgilentText class and a filename save a copy of the GPR file.
"""
f = open(filename, "w")
for h in self.headers:
f.write(h)
for r in self.rows:
f.write(str(r)+"\n")
f.close()
def getArrayDesign(self):
newList = ["# ID\tZoneRow\tZoneCol\tRow\tColumn\tName"]
for row in self.rows:
newRow = []
ID = "%s.%s.%s.%s" % (row.FeatureNum,
row.FeatureNum,
row.FeatureNum,
row.FeatureNum)
newRow.append(ID)
newRow.append(str(row.Zone))
newRow.append(str(row.Zone))
newRow.append(str(row.Row))
newRow.append(str(row.Col))
newRow.append(str(row.SystematicName))
newRow = string.join(newRow, '\t')
newList.append(newRow)
return string.join(newList, '\n')
def saveArrayDesign(self, filePath):
data = self.getArrayDesign()
f = open(filePath, 'w')
f.write(data)
f.close()
|
|
From: <ki...@us...> - 2002-12-07 00:25:26
|
Update of /cvsroot/genex/genex-server/python/Bio/Genex/Parse In directory sc8-pr-cvs1:/tmp/cvs-serv21769 Added Files: __init__.py Log Message: Parsers --- NEW FILE: __init__.py --- #!/usr/bin/env python ########################################################################### # # # C O P Y R I G H T N O T I C E # # Copyright (c) 2001 by: # # * California Institute of Technology # # # # All Rights Reserved. # # # # Permission is hereby granted, free of charge, to any person # # obtaining a copy of this software and associated documentation files # # (the "Software"), to deal in the Software without restriction, # # including without limitation the rights to use, copy, modify, merge, # # publish, distribute, sublicense, and/or sell copies of the Software, # # and to permit persons to whom the Software is furnished to do so, # # subject to the following conditions: # # # # The above copyright notice and this permission notice shall be # # included in all copies or substantial portions of the Software. # # # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND # # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS # # BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN # # ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN # # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE # # SOFTWARE. # ########################################################################### # # Authors: Brandon King # Last Modified: $Date: 2002/12/07 00:25:23 $ # |
|
From: <ki...@us...> - 2002-12-07 00:24:37
|
Update of /cvsroot/genex/genex-server/python/Bio/Genex/Widgets In directory sc8-pr-cvs1:/tmp/cvs-serv21333/Widgets Log Message: Directory /cvsroot/genex/genex-server/python/Bio/Genex/Widgets added to the repository |
|
From: <ki...@us...> - 2002-12-07 00:24:27
|
Update of /cvsroot/genex/genex-server/python/Bio/Genex/Parse In directory sc8-pr-cvs1:/tmp/cvs-serv21227/Parse Log Message: Directory /cvsroot/genex/genex-server/python/Bio/Genex/Parse added to the repository |
|
From: <ki...@us...> - 2002-12-07 00:24:00
|
Update of /cvsroot/genex/genex-server/python/Bio/Genex In directory sc8-pr-cvs1:/tmp/cvs-serv20756 Added Files: __init__.py Log Message: BioGenex Package --- NEW FILE: __init__.py --- #!/usr/bin/env python ########################################################################### # # # C O P Y R I G H T N O T I C E # # Copyright (c) 2001 by: # # * California Institute of Technology # # # # All Rights Reserved. # # # # Permission is hereby granted, free of charge, to any person # # obtaining a copy of this software and associated documentation files # # (the "Software"), to deal in the Software without restriction, # # including without limitation the rights to use, copy, modify, merge, # # publish, distribute, sublicense, and/or sell copies of the Software, # # and to permit persons to whom the Software is furnished to do so, # # subject to the following conditions: # # # # The above copyright notice and this permission notice shall be # # included in all copies or substantial portions of the Software. # # # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND # # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS # # BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN # # ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN # # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE # # SOFTWARE. # ########################################################################### # # Authors: Brandon King # Last Modified: $Date: 2002/12/07 00:23:58 $ # |
|
From: <ki...@us...> - 2002-12-07 00:23:34
|
Update of /cvsroot/genex/genex-server/python/Bio/Genex
In directory sc8-pr-cvs1:/tmp/cvs-serv20261
Added Files:
Config.py
Log Message:
Function that converts Config.pm Perl Hash into Python Dictionary
--- NEW FILE: Config.py ---
#!/usr/bin/env python
###########################################################################
# #
# C O P Y R I G H T N O T I C E #
# Copyright (c) 2001 by: #
# * California Institute of Technology #
# #
# All Rights Reserved. #
# #
# Permission is hereby granted, free of charge, to any person #
# obtaining a copy of this software and associated documentation files #
# (the "Software"), to deal in the Software without restriction, #
# including without limitation the rights to use, copy, modify, merge, #
# publish, distribute, sublicense, and/or sell copies of the Software, #
# and to permit persons to whom the Software is furnished to do so, #
# subject to the following conditions: #
# #
# The above copyright notice and this permission notice shall be #
# included in all copies or substantial portions of the Software. #
# #
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, #
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF #
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND #
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS #
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN #
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN #
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE #
# SOFTWARE. #
###########################################################################
#
# Title: GeneX 2.x - Perl Config Hash to Python Config Dictionary
# Authors: Brandon King
# Last Modified: $Date: 2002/12/07 00:23:30 $
# Date Created: 2002/11/11
#Python Configuration for GeneX
#
import string
import re
def getGenexConfig(path="/usr/local/share/perl/5.6.1/Bio/Genex/Config.pm"):
"""
Parses the Perl GeneX 2.x config file and constructs a dictionary
of for Python programs to retrieve GeneX 2.x configuration information
returns dictionary of genex config information
"""
#Path to /Bio/GeneX/Config.pm
perlConfigPath = path
#Python GeneX Config Dictionary
pyConfig = {}
#Open perl configuration file for reading
file = open(perlConfigPath, "r")
#skip first line of perl code
skip = file.readline()
#Define line as string for while loop
line = " "
#FLAG for appending or replacing current line variable
LINE_APPEND = 0
#While not at end of file
while string.find(line, '__END__') == -1:
#If LINE_APPEND flag = 1
# line of perl code was on more than one line
# turn it into one line by appending it to previous line
if LINE_APPEND == 1:
line += file.readline()
LINE_APPEND = 0
#If LINE_APPEND flag = 1
# line perl code was complete, do not append
else:
line = file.readline()
#Bad perl! If hash definition is on more than one line,
# keep reading!!
if string.find(line, ',') >= 0:
#remove all (,) in string
tmp = string.replace(line, ",", "")
#remove all (') in string
tmp = string.replace(tmp, "'", "")
#split line on nWhitespace=>nWhitespace
myList = re.split("[\s]*=>[\s]*", tmp)
#Check to make sure length of list is 2
if len(myList) == 2:
for x in range(0,2):
if x == 0:
#remove all whitespace on left side of string
myList[0] = string.lstrip(myList[0])
if x == 1:
#remove all whitepace on right side of string
myList[1] = string.rstrip(myList[1])
#convert perl hash values to python dictionary
pyConfig[myList[0]] = myList[1]
else:
#report if any values didn't get processed
print "Did not parse:", myList
else:
#Perl code was not on one line, tell python
# to append next line to previous line
LINE_APPEND = 1
#return converted GeneX config dictionary
return pyConfig
|
|
From: <ki...@us...> - 2002-12-07 00:22:07
|
Update of /cvsroot/genex/genex-server/python/Bio In directory sc8-pr-cvs1:/tmp/cvs-serv19379 Added Files: __init__.py Log Message: Bio Package --- NEW FILE: __init__.py --- #!/usr/bin/env python ########################################################################### # # # C O P Y R I G H T N O T I C E # # Copyright (c) 2001 by: # # * California Institute of Technology # # # # All Rights Reserved. # # # # Permission is hereby granted, free of charge, to any person # # obtaining a copy of this software and associated documentation files # # (the "Software"), to deal in the Software without restriction, # # including without limitation the rights to use, copy, modify, merge, # # publish, distribute, sublicense, and/or sell copies of the Software, # # and to permit persons to whom the Software is furnished to do so, # # subject to the following conditions: # # # # The above copyright notice and this permission notice shall be # # included in all copies or substantial portions of the Software. # # # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND # # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS # # BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN # # ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN # # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE # # SOFTWARE. # ########################################################################### # # Authors: Diane Trout & Brandon King # Last Modified: $Date: 2002/12/07 00:22:03 $ # |
|
From: <ki...@us...> - 2002-12-07 00:21:15
|
Update of /cvsroot/genex/genex-server/python/Bio/Genex In directory sc8-pr-cvs1:/tmp/cvs-serv18899/Genex Log Message: Directory /cvsroot/genex/genex-server/python/Bio/Genex added to the repository |
|
From: <ki...@us...> - 2002-12-07 00:20:57
|
Update of /cvsroot/genex/genex-server/python/bin In directory sc8-pr-cvs1:/tmp/cvs-serv18658/bin Log Message: Directory /cvsroot/genex/genex-server/python/bin added to the repository |
|
From: <ki...@us...> - 2002-12-07 00:20:48
|
Update of /cvsroot/genex/genex-server/python/Bio In directory sc8-pr-cvs1:/tmp/cvs-serv18550/Bio Log Message: Directory /cvsroot/genex/genex-server/python/Bio added to the repository |