|
|
9. Datové soubory |
|
|
|
9.1. Ukládání do souboru |
|
|
|
- Ukládání dat do souboru se děje pomocí
příkazu save.
- Možné syntaxe:
save filename – uloží celý pracovní prostor do souboru,
který bude mít jméno filename
a příponu mat
save filename prom1 prom2 promn – do souboru
filename.matuloží proměnné s názvem
prom1, prom2, promn
save filename prom1 -ascii do souboru
filename se uloží hodnota proměnné
prom1 bez názvu. Soubor bude mít textovou
podobu!
|
|
|
|
Příklad 9A.1: |
|
|
A=[1 2 3;4 5 6;7 8 1];
b=[6; 6; 6]; |
save data1; |
% ulozi vse do data1 |
save data2 A; |
% ulozi A do data2 |
save data3 b -ascii; |
% ulozi do textoveho data3 hodnoty b |
|
|
|
|
9.2. Načtení ze souboru |
|
|
|
- Opačný postup načtení proměnných ze souborů s
příponou mat se děje pomocí příkazu load.
V tom případě se načtou všechny proměnné s jejich názvy
- Pokud byl soubor textový, uloží se data proměnné
identické s názvem souboru
|
|
|
|
Příklad 9A.2: |
|
|
clear all; load data1; who |
clear all; load data2; who |
clear all; load data3; who |
|
|
|
|
9.3. Import dat z Excelu |
|
|
|
- Nutnou podmínkou pro zdárný průběh importu je,
že soubor, z něhož importujete musí:
a) existovat
b) být otevřen !!!
- Import se provede pomocí příkazů ddeinit
a ddereq
- Příkaz ddeinit je odpovědný za komunikaci
mezi prostředím MATLAB a jinou aplikací, příkaz
ddereq provede převod žádaných dat
- Syntaxe:
kanal = ddeinit('aplikace','soubor'); |
Data = ddereq(kanal,'rozsah dat'); |
aplikace je řetězec znaků, který udává název aplikace,
z níž se bude import provádět,
soubor je konkrétní jméno souboru s příponou, s
nímž se pracuje,
kanal je proměnná, jejíž hodnota by měla být
nenulová v případě, že MATLAB komunikuje správně se souborem
(nula je většinou příznakem toho, že soubor není otevřen).
Jedná se o kanál převodu.
Data je matice načtených dat,
rozsah určuje, která data se budou do matice
Data převádět. Pro Excel má rozsah
formát: rXcY:rXXcYY, kde r je zkratkou pro
řádky, c pro sloupce, X je číslo počátečního a
XX konečného řádku požadované oblasti dat, Y je číslo počátečního
a YY konečného sloupce požadované oblasti dat.
|
|
|
|
Příklad 9A.3: |
|
|
Ze souboru g2010.xls načtěte prvních 100
dat 3. sloupce. Data začínají na 8. řádku. |
|
|
Řešení: |
|
|
clear all; ch=ddeinit('excel','g2010.xls'); |
s3=ddereq(ch,'r8c3:r108c3'); |
|
|
|
|
Příklady pro samostatné vypracování |
|
|
Příklad 9B.1: |
|
|
Ze souboru g2010.xls importujte do
prostředí MATLABu průběh příkonu (3. sloupec) a teploty
v kanále sklářské pece (6. sloupec), graficky je
znázorněte a numericky stanovte jejich střední hodnoty.
|
|
|
|
Příklad 9B.2: |
|
|
Načtěte data ze souboru Teplota.mat.
Soubor obsahuje sloupec teploty měřené po 1 minutě.
Vypočtěte hodinové průměry (proměnná Th) a tento vektor uložte
do souboru Teph.mat.
|
|
|
|
Seznam použitých příkazů |
|
|
save, load, ddeinit, ddereq
|
|
|
|
|