[base] BASE2: API for storing normalized data
Hi, Is there a way of programmatically storing externally normalized microarray data in BASE? I have been looking through the API but can't seem to find an obvious way of doing this. We run a workflow outside BASE (currently in GenePattern) which pulls data out of BASE (using the BASE client API) and then normalizes it using an R script that calls Bioconductor functions. I then need to store that normalized data back into BASE so it can be reused later, rather than having to do the lengthy normalization again. Is there a way of creating BioAssaySet objects directly and importing the external data into it? And do I need to create a root BioAssaySet first? I am kind of out of my depth here.. :-) Cheers Micha == Dr Micha M Bayer Bioinformatics Specialist Genetics Programme The Scottish Crop Research Institute Invergowrie Dundee DD2 5DA Scotland, UK Telephone +44(0)1382 562731 ext. 2309 Fax +44(0)1382 562426 http://www.scri.sari.ac.uk/MichaBayer.htm = _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ SCRI, Invergowrie, Dundee, DD2 5DA. The Scottish Crop Research Institute is a charitable company limited by guarantee. Registered in Scotland No: SC 29367. Recognised by the Inland Revenue as a Scottish Charity No: SC 006662. DISCLAIMER: This email is from the Scottish Crop Research Institute, but the views expressed by the sender are not necessarily the views of SCRI and its subsidiaries. This email and any files transmitted with it are confidential to the intended recipient at the e-mail address to which it has been addressed. It may not be disclosed or used by any other than that addressee. If you are not the intended recipient you are requested to preserve this confidentiality and you must not use, disclose, copy, print or rely on this e-mail in any way. Please notify [EMAIL PROTECTED] quoting the name of the sender and delete the email from your system. Although SCRI has taken reasonable precautions to ensure no viruses are present in this email, neither the Institute nor the sender accepts any responsibility for any viruses, and it is your responsibility to scan the email and the attachments (if any). - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ The BASE general discussion mailing list basedb-users@lists.sourceforge.net unsubscribe: send a mail with subject unsubscribe to [EMAIL PROTECTED]
Re: [base] BASE2: API for storing normalized data
Micha Bayer wrote: Hi, Is there a way of programmatically storing externally normalized microarray data in BASE? I have been looking through the API but can't seem to find an obvious way of doing this. We run a workflow outside BASE (currently in GenePattern) which pulls data out of BASE (using the BASE client API) and then normalizes it using an R script that calls Bioconductor functions. I then need to store that normalized data back into BASE so it can be reused later, rather than having to do the lengthy normalization again. Is there a way of creating BioAssaySet objects directly and importing the external data into it? And do I need to create a root BioAssaySet first? I am kind of out of my depth here.. :-) Yes, it is possible to do this the same way as, for example, the existing Lowess normalization plug-in does it. This is the general outline: 1. Call BioassaySet.newTransformation() to create a new transformation item. Give it a meaningful name and description, e.g. GenePattern normalization using XXX method 2. Call Transformation.newProduct() to create the child bioassayset that stores the normalized data. Give it also a meaningful name and description. 3. Call BioassaySet.getSpotBatcher() to create a SpotBatcher object. Use the insert() method to store the normalized intensities. The above procedure can be used when you already have a (root) bioassayset with your data. If you start out with raw data you must create a root bioassayset. In this case, you should call Experiment.newTransformation() to create the transformation in the first step. In step 3 you may also have to do: BioAssaySet.getPositionBatcher() which is used to assign reporters to the normalized data, and BioAssaySet.getMappingBatcher() if you need to keep links to the raw data. I don't know if this made things clearer for you. There is also some information available at http://base.thep.lu.se/chrome/site/doc/development/overview/dynamic/index.html The document is rather old and I can't say if it is correct in all details. You can also check the code for the RMAExpress plug-in athttp://lev.thep.lu.se/trac/baseplugins/wiki/se.lu.thep.affymetrix which also uses an external program (RMAExpress) for normalization of Affymetrix data. /Nicklas - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ The BASE general discussion mailing list basedb-users@lists.sourceforge.net unsubscribe: send a mail with subject unsubscribe to [EMAIL PROTECTED]