reading a matrix in matlab
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
hello, I have a matrix like below
> head(mat[,1:4])
AT1G01060 AT1G01170 AT1G01180 AT1G01260
AT1G01060 1.0000000 0.3193360 0.6272994 0.2658624
AT1G01170 0.3193360 1.0000000 0.3178880 0.3588030
AT1G01180 0.6272994 0.3178880 1.0000000 0.2542234
AT1G01260 0.2658624 0.3588030 0.2542234 1.0000000
AT1G01380 0.6178751 0.1561297 0.7052692 0.3252033
AT1G01490 0.5990499 0.6129301 0.6424225 0.5727253
>
how I can read that as a matrix to run as an input of my code. I attached my code thank you for your help
1 Commento
Star Strider
il 12 Gen 2016
You attached the code but not the file you are reading. Attaching ‘ND.m’ is not relevant because it apparently wants the matrix you want to read as its input argument.
I provided a textscan call to read your file (as best I could, considering I do not have your file to work with). Have you used it? Did it work?
Risposte (1)
Star Strider
il 11 Gen 2016
You did not attach your code. If this is a text file, please attach the file as well.
The easiest way to import it as a text file would be to use the textscan function.
6 Commenti
Star Strider
il 12 Gen 2016
See if this works:
Ngenes = 20; % Insert Correct Value Here
datacell = textscan(fid, ['%*s' repmat('%f',1,Ngenes)], 'HeaderLines', 1, 'CollectOutput',1);
datamatrix = cell2mat(datacell);
The '%*s' tells textscan to skip over the first (string) column. The repmat call duplicates the '%f' format descriptor for the number of genes that are in your correlation matrix. The cell2mat call should then work, since ‘datacell’ will have only numeric values.
I cannot test this without your file, but it should work.
Vedere anche
Categorie
Scopri di più su Data Import and Export in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!