- there will be a warning saying that "your matrix dimention is changing each time you run the file", but thats something that we want and its ok
- also for your matrix column , u can set a fix number like 10(the longest world length that will be in your file)
make a matrix out of list
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Nicle Davidson
il 16 Ott 2021
Modificato: Nicle Davidson
il 16 Ott 2021
I have a file which has 4 words such as
mini
miny
milky
mouse
It could also be a file with more words, but one word per line.
I would like to after reading from the file, which might could be done with load('file.txt'); command,
make a matrix that is as long as I have words in this file.
so if I have 4 words, then the matrxi H shall be 4 rows long.
Is it a possibility?
1 Commento
zahra hosaini
il 16 Ott 2021
hi
i think its possible
declare a parameter like i=1 (showing which row u are in)
make a loop to read all of your file and detecting the end of it as a break
make another loop inside of it for reading each line and detecting the end of it for break(i think it was parameter \0)
as u read the word in second loop put it in your matrix (use another parameter like j=1 for declaring your column and increase it each time you end the second loop)
increase i after getting out of the second loop to move to the next row
Risposta accettata
DGM
il 16 Ott 2021
Modificato: DGM
il 16 Ott 2021
It's not really clear if you want the contents of the file to be read into an array, or whether you just want a numeric (or other unspecified) array with the same size.
Assuming the first case:
fid = fopen('fruitwords.txt','r');
A = textscan(fid,'%s');
fclose(fid);
A{:}
If it's the second case, the simple way would be to simply read the file as above and then use the size of A to allocate a new array.
mynewarray = zeros(size(A));
This may be expensive if the file contents are unneeded or cause memory burdens. Trying to accurately and efficiently get line counts might be a bit more complicated otherwise:
1 Commento
Più risposte (1)
KSSV
il 16 Ott 2021
Read about importdata. You can import the data into MATLAB, the data will be a cell array.
S = importdata('myfile.txt') ;
celldisp(S)
2 Commenti
Vedere anche
Categorie
Scopri di più su Large Files and Big Data 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!