How To Save A Cdf Environment In A File ?
1
3
Entering edit mode
11.2 years ago
Mycroft34 ▴ 120

To analyze Affymetrix chips, one can either load a chip description file (cdf) from bioconductor (example: hgu133plus2cdf), or create one using the bioconductor package makecdfenv from the corresponding Affymetrix cdf file (here: HG-U133Plus2.cdf). The result is an environment as a hashtable, with the probesets as keys, and a table of probes as value (at least it is what I understood).

After modifying the composition of the cdf (removing unwanted probes and probesets), I would like the resulting environment to be packaged or saved as a file (to give it to the final user, and be sure that it will be used instead of the original cdf). makecdfenv (make.cdf.package) allow one to produce a package from a file; but how should I save the modified environment in a file to be able to use that function.

Thanks for any hint.

bioconductor • 3.5k views
ADD COMMENT
1
Entering edit mode

Did you try saving it to a file with save( )?

ADD REPLY
0
Entering edit mode

Yes; but when reloaded it is not recognized as a true cdf by bioconductor rma or similar packages, that keep on searching for the original package; but I found an alternative with Array Initiative programme. I still have to understand how to save properly my modified cdf environment, but there is no hurry.

ADD REPLY
0
Entering edit mode

Hmm. I see. I searched around on this topic and saw several people posting over the years a similar question. It seems that somehow using makecdfenv should be possible. But, I did not see a clear solution anywhere. So, if anyone else has successfully done this it would be great if they will post here.

ADD REPLY
1
Entering edit mode

makecdfenv is the end solution; but it requires a file properly formatted; in fact, it is exactly what ArrayInitiative (http://wellerlab.uncc.edu/ArrayInitiative/tutorial.html) is doing : taking the ascii cdf file originally proposed by Affymetrix as well as the corresponding probe file, to produce a dat file that your can then filter out of the unwanted probes and probesets. after reloading in ArrayInitiative the modified dat file, the programme output the modified ascii cdf file, that can then be used to produce a package with makecdfpackage from makecdfenv, or directly produce with the same package an environment usable in the subsequent array processing.

ADD REPLY
0
Entering edit mode

Very cool. It seems like this solved your problem. I suggest you put these details in an answer to your own question. You'll get my upvote! And, then this question can have an accepted answer.

ADD REPLY
3
Entering edit mode
11.2 years ago
Mycroft34 ▴ 120

To close that question, as suggested, here is a summary of the solution:

In order to use a custom cdf to analyse Affymetrix array, (for example, after removing unwanted probes or probesets), it is necessary to create a cdf file for example, from a cdf environment from bioconductor, or generated from an ascii cdf file given by Affymetrix.

The package makecdfenv is the end solution, that uses a file properly formatted.

I found 2 solutions to create that file;

The easiest is using a program from Array Initiative (http://wellerlab.uncc.edu/ArrayInitiative/index.html) :

Taking the ascii cdf file originally proposed by Affymetrix as well as the corresponding probe file, the program produced a dat file that your can then filter out of the unwanted probes and probesets. after reloading in ArrayInitiative the modified dat file, the program output the modified ascii cdf file, that can then be used to produce a package with makecdfpackage from makecdfenv, or directly produce with the same package an environment usable in the subsequent array processing. This solution worked perfectly for me.

For a more detailled procedure, there is a step by step tutorial at : http://wellerlab.uncc.edu/ArrayInitiative/tutorial.html

Since then, I found another solution given at aroma project : http://www.aroma-project.org/node/41 This solution that I briefly tested uses env2Cdf, an undocumented function from aroma.affymetrix package. It seemed to work; the cdf file produced is a binary one.

ADD COMMENT
0
Entering edit mode

Mycroft34 or Obi Griffith I am using ArrayInitiative to create the cdf file (CytoscanHD Array) in the correct format so that it can be read into makecdfenv. However the program doesnt import the probe sequence file (probe_tab) saying the header is incorrect, as well as the number of columns. The error log says

Line Number,Probe Set ID,PM X-Coordinate,PM Y-Coordinate,Error Messages 1,NA,NA,NA,The header line is not correct. 2,NA,NA,NA,This line does not have the correct number of columns. Should be 6 2,NA,NA,NA,This line does not have the correct number of columns. Should be 6.....

The probe_tab file from Affymetrix contains 7 columns Probe Set Name Probe X Probe Y Probe Interrogation Position Probe Sequence Target Strandedness Probe Type

C-3HJWD 5 0 177 GTGACCCTACCATCAAAAGGCCTGG Antisense PM

S-4TNJHT 6 0 17 GGTGGCAATACTTAAAAGGAATCAG Antisense PM The Probe type column seems to be a problem. I am reluctant to make any changes to the file. Is there a way around this? I know that your post is 3.1 years old, but I am hoping to get some help. Of course I will try env2cdf next, but the node/41 page doesnt open. Guess its been a while. Thanks for any help, anyone.

ADD REPLY

Login before adding your answer.

Traffic: 2118 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6