Importer des données 

Importer des données dans MATLAB,  revient à récupérer ces données à partir d’un fichier externe. Pour  effectuer cette opération, il faudra préciser le chemin par lequel on va récupérer le fichier.  La définition de ce chemin peut être simplifiée grâce au "path"  MATLAB.

Le " path " MATLAB est constitué d’un ensemble de dossiers que MATLAB peut lire lors d’une session courante. Tout fichier appartenant au " path " peut être accessible sans indiquer le chemin. D’où l’intérêt d’inclure dans le " path " tous les dossiers contenant des fichiers de travail.

Pour ajouter un dossier au " path ", cliquer sur Set Path (dans la barre de commandes MATLAB), puis sur Add With subfolders, puis  choisir les dossiers à ajouter, puis Save.

Les dossiers n’appartenant pas au " path " apparaissent éclaircis dans la fenêtre Current Folder, de l’environnement MATLAB.

Il convient donc d’ajouter les dossiers de travail dans le " path "  MATLAB.

 

La fonction prédéfinie  importdata() permet d’importer des fichiers de différents formats.

 

Exemples d’utilisations :

A = importdata(nom_de_fichier) ;

Importe les données dans une table A à partir du fichier nommé nom_de_fichier.

 

A = importdata('-pastespecial') ;

Importe les données depuis le presse papier.

 

Autres exemples :

Importer une image

maPhoto = 'mon_image.jpg' ;

A = importdata(maPhoto) ;

image(A) ; % affiche l’image « mon_image » dans une fenêtre.

 

Importer un fichier texte:

Importer des données sous forme d’un fichier texte, tout en spécifiant les délimiteurs et les entêtes.

On donne, un fichier texte appelé "mes_donnees.txt";  contenant les données suivantes:

 

Lundi Mardi Mercredi Jeudi Vendredi Samedi Dimanche
3,01 4,21 2,55 4,57 5,28 3,28 5,53
3,11 5,65 5,19 3,95 5,29 6,07 4,68
2,70 1,85 2,38 2,69 1,84 1,32 2,18
4,60 2,14 3,25 1,08 1,92 1,22 2,01
3,26 2,14 3,63 2,05 1,96 2,88 2,60

 

 

On suppose aussi que le répertoire dans lequel  se trouve le fichier est déjà ajouté au "path".

 

Le script ci-après permet  d’afficher les données importées dans la fenêtre des commandes;  saisir les instructions ci-après,  puis l'enregistrer.

 

monFichier = 'mes_donnees.txt' ;

delimiterln = ' ' ;
headerln = 1 ;

A = importdata(monFichier, delimiterln,headerln) ;

for  k = [1 : 7]

       disp(A.colheaders{1, k})
       disp(A.data(:,k))
       disp(' ')

end

 

Exécuter le script,  toutes les données du fichier seront affichées dans la fenêtre des commandes.

 

Pour des fichiers EXCEL, on a les fonctions  xlsread().

 

Quelques  fonctions de gestion de fichiers de bas niveau:

 

fclose : pour fermer tous les fichiers ouverts ;
feof : pour trester si on a une fin de fichier ;
ferror :          pour avoir des informations sur les erreurs d’entrée/sortie de fichiers ;
fgetl : pour lire une nouvelle ligne d’un fichier en enlevant le caractère de nouvelle ligne;
fgets : pour lire une ligne d’un fichier avec le caractère nouvelle ligne ;
fopen : ouvre un fichier, ou obtient des informations sur les fichiers ouverts ;
fprintf : écrit des données dans un fichier texte ;
fread : lit des données d’un fichier binaire ;
fscanf : lit les données d’un fichier texte ;
fwrite : écrit des données dans un fichier binaire.

 

 

Exporter des données 

Exporter les données de MATLAB revient à les écrire dans un fichier. Les données ainsi exportées peuvent être traitées par d’autres applications capables de lire des fichiers ASCII.

Pour les fichiers EXCEL on  utilise la fonction xlswrite().

Les fichiers créés peuvent être :

  • Des fichiers ASCII,
  • Des fichiers log (des différentes frappes du chavier ainsi que les textes résultant en sortie) : pour cela on utilise la fonction diary,
  • Des fichiers MEX pour accéder aux fichiers C/C++ ou FORTRAN.

 

Dans le tableau ci-après donne des fonctions prédéfinies MATLAB d'import-export pour différents types de fichiers:

 

Type de fichier

Extension

Description

Fonction d'import

Fonction d'export

Données formatées MATLAB

MAT

Fenêtre de travail sauvée

load

save

Accès partiel de variable dans l'espace de travail

matfile

matfile

Text

Tout type, y compris CSV, TXT

Nombres délimités par virgule

csvread

csvwrite

Les nombres délimités

dlmread

dlmwrite

Les nombres délimités, ou le mélange des chaines et des nombres

textscan

-----

Les nombres délimités orientés colonnes ou le mélange des chaînes et des nombres

readtable

writetable

Tableur

XLS

XLSX   XLSM XLSB

(pour les systèmes MS EXCELÒ pour WindowsÒ)

XLTM (import uniquement), XLTX (import uniquement), ODS (Systèmes  avec une interface COM)

Classeur ou série de tableurs

xlsread

xlswrite

Les données orientées colonnes dans un classeur ou une série de tableurs

readtable

writetable

Langage de balisage extensible

XML

Texte formaté en XML

xmlread

xmlwrite

 

 

Autre format de fichiers:

 

Type de fichier

Extension

Description

Fonction d'import

Fonction d'export

Fichier de la boîte à outil Data Acquisition Toolbox TM

DAQ

Data Acquisition Toolbox

daqread

---------

Données scientifiques

CDF

Format de données commun

Voir"Common Data Format"

Voir cdflib

FITS

Système flexible de transport d'images

Voir "FITS Files"

Voir "FITS Files"

HDF

Format de données hiérarchiques V4 ou HDS.EOS V2

Voir"HDF4 Files"

Voir "HDF4 Files"

H5

HDF ou HDF.EOS V5

Voir "HDF5"

Voir "HDFV5"

NC

Forme des données réseau commune

Voir "NetCDF Files"

Voir "NETCDF Files"

Image

BMP

Bitmap

imread

imwrite

GIF

Graphics Interchange Format

HDF

Hierachical Data format

JPEG, JPG

Joint Photographic Experts Group

JP2, JPF, JPX, J2C, J2K

JPEG2000

PBM

Bitmap portable

PCX

Paintbrush

PGM

Portable Gray Map

PNG

Portable Network Graphics

PNM

Portable Any Map

PPM

Portable Pixmap

RAS

SunTM Raster

TIFF, TIF

Fichier Image Taggé

XWD

Xwindows Dump

CUR

Ressources curseur Windows

imread

---------

ICO

Ressources icônes Windows