Duomenų įrašymas į txt bylą ir nuskaitymas iš txt bylos naudojant Matlab  (0)

Apdorojant įvairius duomenis, ypač didelius masyvus reikia juos arba įrašyti į tekstinę bylą, arba nuskaityti iš jos. Toliau pateikiami paprasti pavyzdžiai kaip tai padaryti Matlab terpėje.


Prisijunk prie technologijos.lt komandos!

Laisvas grafikas, uždarbis, daug įdomių veiklų. Patirtis nebūtina, reikia tik entuziazmo.

Sudomino? Užpildyk šią anketą!

Duomenų įrašymas į tekstinę bylą

Matlab sugeneruotus duomenų masyvus ne tik galima atvaizduoti grafiniu pavidalu arba išskleisti lentele, bet ir nusiųsti į tekstinį failą. Tai dažnai naudojama, kai vykdomas duomenų apsikeitimas tarp skirtingų programų (MathCad, vartotojų suprogramuotų specialių apdorojimo programų ir t.t.). Darbui su išorinėmis bylomis skirtos sekančios funkcijos:

importdata   duomenų įkėlimas iš įvairių bylų rūšių ;
load              visų duomenų įkėlimas iš MAT arba ASCII bylų;
open             įvairių tipų bylų atidarymas, skirtas bylos parengimui dirbti su kitomis funkcijomis;
save             visų tipų duomenų išsaugojimas į MAT arba ASCII bylą;
winopen       bylos atidarymas su konkrečia programa (tiktai Windows).

Duomenų išsaugojimui patogu naudoti funkciją save:

save
save filename
save filename var1 var2 ...
save ... option
save('filename', ...)


Funkcijai save būtina nurodyti bylos vardą (filename) ir saugomus kintamuosius (var). Galima nurodyti papildomus nustatymus:

-append                          prijungia duomenis prie jau egzistuojančios MAT bylos;
-ascii                              8 skaitmenų ASCII formatas;
-ascii -double                 16 skaitmenų ASCII formatas;
-ascii –tabs                     atskirimas tabuliacija;
-ascii -double –tabs 16   skaitmenų ASCII formatas su tabuliacijos atskyrimu;
-mat                                dvejatainė MAT bylos forma (pagal nutylėjimą);
-v4                                   specialus formatas, leidžiantis bylą suprasti 4 Matlab versijai. 
 

for j=1:3  
for i=1:10 %ciklo formavimas
x(i,j)=i; %dvimacio masyvo formavimas
end %ciklo pabaiga
end
savefile = 'test.matl'; %bylos pavadinimas
save(savefile,'x','-ASCII','-tabs'); %duomenu matricos
%irasymas i byla
%(ASCII 8 skaitmenu formatas, %tabuliavimo atskyrimas)

Duomenų įkėlimas iš tekstinės bylos.

Duomenis Matlab programavimo terpėje galima ne tik generuoti automatiškai, bet ir įkelti iš duomenų bylų. Tai labai dažnai taikoma apdorojant įvairius matavimų duomenis, kai matavimo sistemos automatizuotai perduoda išmatuotų parametrų reikšmes į PC, kur jos talpinamos į tekstines bylas. Darbui su išorinėmis bylomis skirtos sekančios funkcijos:

importdata   duomenų įkėlimas iš įvairių bylų rūšių ;
load              visų duomenų įkėlimas iš MAT arba ASCII bylų;
open             įvairių tipų bylų atidarymas, skirtas bylos parengimui dirbti su kitomis funkcijomis;
save             visų tipų duomenų išsaugojimas į MAT arba ASCII bylą;
winopen        bylos atidarymas su konkrečia programa (tiktai Windows).

Duomenų įkėlimui patogu naudoti funkciją load:

load
load filename
load filename X Y Z
load filename -ascii
load filename -mat
S = load(...)


Funkcijai load būtina nurodyti bylos vardą (filename). Galima naudoti papildomus funkcijos atributus:

load filename X Y Z – iš bylos įkeliami konkretūs kintamieji
load filename –ascii – formatas, kuriuo įkeliami duomenis. Jei formatas netinka, gražinama klaida
load filename –mat – įkeliami mat formato duomenys

Žemiau pateiktas funkcijos naudojimo pavyzdys.

%duomenu ikelimas is tekstines bylos 
clear all
load test.matl; %ikeliama duomenu byla
D=size(test); %ikelto masyvo dydis
E=D(1,1); %eiluciu skaicius
S=D(1,2); %stulpeliu skaicius
x1=test(1:E,1); %1 stulpelio visos eilutes
x2=test(1:E,2); %2 stulpelio visos eilutes
x3=test(1:E,3); %3 stulpelio visos eilutes


Pasidalinkite su draugais
Aut. teisės: www.technologijos.lt
(0)
(0)
(0)

Komentarai (0)

Susijusios žymos: