I am using microarray expression dataset from http://www.broadinstitute.org/mpr/CNS/. Here I see negative values. How can I apply log transform over negative values? Would it be OK if I apply log over the absolute value and then put the sign? And what about 0?
You can simply add a small constant to all the values to generate positive values. A potentially better solution is to download the raw data as .CEL files from the link you mention and renormalize and summarize yourself.
+1 for using the CEL files. You never know what's been done to data if you rely on preprocessing done by other people. Which is why you end up with annoying situations such as negative or zero values.
Thanks for the suggestion of using .CEL file. However, I use another dataset which does not have any raw data and negative values are also there. I should note that I have to add a BIG constant (>10k) to make all the values positive.
You can always threshold for example everything lower than X set to X. There are some references in the literature that do such work on normalized data.
I've heard that while normalization, variance-stabilization transform that uses SINH type functions(as in VSN package in R) can generate negative values for intensities.
+1 for using the CEL files. You never know what's been done to data if you rely on preprocessing done by other people. Which is why you end up with annoying situations such as negative or zero values.
Thanks for the suggestion of using .CEL file. However, I use another dataset which does not have any raw data and negative values are also there. I should note that I have to add a BIG constant (>10k) to make all the values positive.