[Matlab] Load linya ng vector hiwalay (Mula sa matris file)

D

davyzhu

Guest
Hello sa lahat,

Mayroon akong isang file na naglalaman ng ilang mga linya ng vectors (ang lahat ng mga digit ay nasa ascii mode).
Ang nilalaman ng file ay tulad ng sa ibaba, ang bawat linya ay isang vector (tulad ng isang bagay
gumamit ka ng SAVE-ascii upang i-save ang isang matris):
1 2 3 4 5 6 7 8 9 10
6 7 8 9 10 1 2 3 4 5
4 5 6 7 8 1 2 3 9 10
......
Ngunit ang aking totoong vector linya ang bawat isa ay 1 * 2000, at mayroon akong 4000 vectors linya (ibig sabihin, isang 4000 * 2000 matris).
Kung kaya't ang vector ay masyadong malaki para i-load ang lahat ng mga vectors (ibig sabihin ang file matris) sa pamamagitan ng pagkarga-ascii command.

Paano i-load ang bawat linya ng vector magkahiwalay?
ibig sabihin ng load line1 vector -> load line2 vector -> ... hanggang sa huling linya vector

Sa lahat, gusto ko ng loop na nagbabasa ng isang linya mula sa mga file ng bawat loop pag-ulit.

Salamat!
Richard
Huling na-edit sa pamamagitan ng davyzhu sa Hunyo 14, 2005 8:35; edited 1 time in total

 
Ano ang mali sa paggawa nito?
foo = load ( 'mydata');

Na gumagawa ng mabuti sa isang file na naglalaman ng 2000x4000 numero.Ang resultang matris ng doubles consumes 64 megabytes.

Kung iyon ay hindi kung ano ang gusto mo, pakipaliwanag sa mas mahusay na "load sa bawat linya ng vector hiwalay".

 
Hi echo47,

Ako ay nalilito sa operation na ito

<img src="http://www.edaboard.com/images/smiles/icon_wink.gif" alt="Wink" border="0" />Nag-load ang matris consumes masyadong maraming ram.At load ang lahat ng mga molde ay hindi kinakailangan para sa aking trabaho.

Ang bawat linya ng molde ay isang codeword natanggap mula sa mga channel.Kaya ko bang mabasa ng isang codeword sa bawat oras (Hindi na kailangan ng load ang lahat ng mga codeword).

Kaya kung ano ang gusto ko ay ang pagharap sa mga hilera ng matris (ibig sabihin ang hilera vector ng matris).

Halimbawa, ang
sa time1, load ang hilera 1 mula sa matris file, mabasa ang mga code na salita 1;
sa time2, load ang hanay ng 2 mula sa matris file, mabasa ang code salita 2;
......

Paumanhin para sa aking mga mahihirap na Ingles,

Malugod na pagbati,
Davy

 
Ahhh ...basahin ang isang linya ng bawat loop pag-ulit!

Ay ito kung ano ang nasa isip mo?

Code:

fin = fopen ( 'mydata');

habang ~ feof (palikpik)

foo = sscanf (fgetl (palikpik), '% d', [1 inf]);

disp (foo);% palitan na ito sa iyong linya ng pag-parse ng code

wakasan

fclose (palikpik);
 

Welcome to EDABoard.com

Sponsor

Back
Top