I need to pass from a text file to a matrix in Matlab
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
I have the next .txt file.
Name-Goals-Assists-Red cards
Frank-6-2-0
Mike-0-5-4
Ben-23-11-2
I want to transform that into a matrix, for example named P. So that when I put P(1,2) I get 6 or P(3,1) I get Ben. First I use fopen to get the id but then I do not know how to do to have the matrix and not an array of cells.
1 Commento
Stephen23
il 26 Mag 2022
"I do not know how to do to have the matrix and not an array of cells."
A mix of text and numeric cannot be stored in a numeric matrix.
Do not use a cell array, it just makes working with numeric data inefficient.
You should use a table, probably by using READTABLE when you import the data.
Risposta accettata
Voss
il 25 Mag 2022
You say you want a matrix that contains stuff like the number 6 as well as the string "Ben" (or the character array 'Ben'). That's not possible to do with a matrix because each element of a matrix must be of the same class.
The closest you can get is to use a cell array, because the nice thing about cell arrays is that any element can be of any class.
P = {'Frank' 6 2 0; 'Mike' 0 5 4; 'Ben' 23 11 2} % cell array
P{1,2}
P{3,1}
P = ['Frank' 6 2 0; 'Mike' 0 5 4; 'Ben' 23 11 2] % trying to make a matrix doesn't work
0 Commenti
Più risposte (2)
Image Analyst
il 25 Mag 2022
After you read this:
attach the actual text file, or at least a part of it if it's too big.
In the meantime did you try
t = readtable(fileName); % Load into table.
P = table2array(t(:, 2:end)) % Convert columns 2 onwards into a matrix called P
0 Commenti
Image Analyst
il 26 Mag 2022
Or you could do this:
ca = {'Frank' 6 2 0; 'Mike' 0 5 4; 'Ben' 23 11 2} % Define a cell array
%ca = readcell(fileName); % Read in data from file into a cell array.
t = cell2table(ca) % Convert to a table.
P = table2array(t(:, 2:end)) % Convert columns 2 onwards into a matrix called P
0 Commenti
Vedere anche
Categorie
Scopri di più su Data Type Conversion 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!