Problem using quantilenorm() with DataMatrix objects

5 vues (au cours des 30 derniers jours)
David Braun
David Braun le 24 Avr 2011
Hi Everyone,
I am trying to perform quantile normalization on some microarray data (I've imported the data as a DataMatrix object), but I'm getting an error. The following is my code:
%%Import all Bioinformatics Toolbox Functions and Constructors
import bioma.data.*
import bioma.util.*
%%Open Excel with Microarray Data
% Creates a DataMatrix object
DM = DataMatrix('File','IntensityOnly_NN_Ordered.xls');
%%Quantile Normalization
NormDM = quantilenorm(DM);
But I get this error:
??? Undefined function or method 'sort' for input arguments of type 'bioma.data.DataMatrix'.
Error in ==> quantilenorm at 86
[sortedVals,ndx(:,col)] = sort(values(:,col));
Error in ==> NormalizeAndFilter at 17
NormDM = quantilenorm(DM);
I am using Matlab R2011a with the latest Bioinformatics Toolbox on a Windows 7 64-bit computer.
I would appreciate any thoughts on this.
Many thanks, David

Réponses (1)

Paulo Silva
Paulo Silva le 25 Avr 2011
You can't use the MATLAB sort function on those DataMatrix, at least not directly, see this functions
sortcols %sort the columns of the DataMatrix
sortrows %sort the rows of the DataMatrix
double %convert the DataMatrix to one MATLAB Array and you can use the sort function

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by