Informatique et Techniques Numériques en Economie

 

M1, Université Paris II

Michel de Rougemont

 

 

Travaux dirigés

David Mas et Rémi Dorat

 

Les travaux dirigés ont lieu au 1er semestre : 12 séances de 1h30.

 

Les étudiants développent un projet personnel qui illustre :

 

Chaque étudiant doit présenter un rapport avec des copies d’écran montrant comment ces techniques ont été intégrées au sein du projet.

 

Les  logiciels à utiliser sont :

 

  1. PHP/MySQL

 

            Easyphp en local, ou  http://u.paris2.free.fr

            Outils FTP et query.php

 

           

  1. Mondrian pour les requêtes OLAP on MySQL

 

  1. SAS et SAS/Entreprise Miner
  2. XML

 

 


Plan des TDs

 

 

  1. Serveurs http : Apache sur free
    1. Langages de script : PHP
    2. Comparaison avec ASP
    3. Bases de PHP : http://www.php.net

 

  1. Système relationnel MySQL
    1. Créer des tables
    2. Lire des données : INSERT, LOAD DATA, …
    3. Requêtes SQL élémentaires

 

  1. Simulation d’un site marchand (Amazon). Créer des pages HTML,
    1. Possibilité d’identification
    2. Tracer toutes les interactions
    3. Sur une page « target », on génère un achat d’un montant aléatoire.
    4. Base d’un projet, d’analyse de données, d’apprentissage et de scoring.

 

  1. Modèle OLAP
    1. http://paris2.dyndns.org:8080/mondrian/
    2. Analyse des cubes foodmart et b2c
    3. Requêtes OLAP et MDX

 

  1. Data-Mining
    1. Arbre de décision : DTREE, http://www.cs.ubc.ca/labs/lci/CIspace/Version4/dTree/
    2. Télécharger DTREE et lire un fichier généré à partir de l’entrepôt de données

 

A partir de  http://paris2.dyndns.org/etud/php/query.php  tappez :

 

select age, sexe, annee, gamme, achat into outfile '/home/etud/abc/test1.txt' FIELDS TERMINATED BY ',' LINES TERMINATED BY ';\n' from clients,transactions, produits where clients.id_client=transactions.id_client and produits.id_produit=transactions.id_produit

 

Un fichier “test1.txt’ est généré pour une analyse: age,sexe,année, gamme, achat.

Ce fichier doit être distinct des fichiers existants du répertoire abc.

·         Techniques d’Arbre de décision.

http://www.sas.com :  SAS Entreprise Miner

http://www.cs.ubc.ca/labs/lci/CIspace/Version4/dTree/

http://www.aaai.org/AITopics/html/trees.html

http://www.cs.ualberta.ca/~aixplore/learning/DecisionTrees/InterArticle/DecisionTreeDoc.html

 

·         Régression linéaire : http://www.math.csusb.edu/faculty/stanton/m262/regress/regress.html

·         Réseaux de Neurones

·         Clustering et Règles d’association

 

  1.  XML (2 séances)

·         Créer un fichier RSS sur la page d’accueil

·         Soap, Data-exchange

 

  1. Présentation des projets

 

 


Séances de T.D. N°1,2,3,4,5,6  Semaines du 10 Octobre au 14 Novembre

 

 

Le but de ces 3 premières séances est de construire un Site marchand simplifié, selon le modèle d’Amazon, lié à une Base de Données  relationnelle  sur un serveur Apache. L’historique des ventes est géré par une base relationnelle, dont le contenu est périodiquement transmis à un entrepôt de données. Les séances suivantes prolongeront ce projet.

 

La langage informatique PHP www.php.net  permet d’interagir avec le système de gestion de Bases de Données MySQL www.mysql.com . Ces sont les deux principaux outils à utiliser.

 

1.       Créer un site  xxx.free.fr  après s’être inscrit sur www.free.fr avec le login=xxx, ou utiliser le site   http://u.paris2.free.fr , ou un répertoire local à l’aide de  Easyphp  (Apache + MySql). Recopier le répertoire x du site http://u.paris2.free.fr sur son site ou dans un répertoire à son nom sur u.paris2. Les outils FTP et query.php permettent d’éditer en mode http des fichiers et d’envoyer des requêtes SQL directement, sans passer par phpadmin.

 

2.      Créer une Base MySQL avec deux tables. Une table PRODUITS(id,nom,type,gamme,prix) et une table T(date,login,id,prix,gamme,vente) qui décrira les transactions effectuées.

 

3.      Chaque étudiant s’inscrit sur un portail en déclinant son profil et en obtenant un login puis gère une table Produits (MySql) décrivant ses produits et leurs prix. Un des champs GAMME est obligatoire  et contient une valeur A,B,C ou D.

 

4.      Création de pages HTML qui permettent :

·        Une page d’acceuil en page 1 qui permet de sélectionner une catégorie,

·        Choix d’un produit, puis d’un login/passwd (voir http://u.paris2.free.fr/x/php/p1.php comme modèle) en page 2,

 

5.      Création de pages PHP

·        Proposition d’un devis à partir des données précédentes. (page 4)

·        Gestion de l’achat en page 5 en distinguant:

·        achat confirmé :

·        nouveau devis :

Un enregistrement est inséré dans la table Transactions reflètant chacune de ces situations. Un champs GAMME (à valeur dans  A, B, C, D)  représente les gammes de prix (1er prix, entrée de gamme, standard, luxe) des produits,

Un champs VENTE est obligatoire et vaut 1 si la vente est réalisée et 0 sinon.

 

6.      Chaque étudiant doit dépenser  une somme forfaitaire (1000 Euros) sur le plus de sites possibles, excepté son site propre.

 

7.      Périodiquement, on transfère les données dans  un Entrepot de données dont le schéma sera donné en cours, localisé sur la machine http://paris2.dyndns.org/

 

 


Séances de T.D. N°7,8   Semaines du  21 et 28 Novembre

 

 

Les 3 premières séances (devenues 6 premières séances) ont permis  de construire :

1.      des pages HTML et PHP

2.      une base relationnelle

 

Les  séances 7 et 8 sont consacrées au modèle OLAP accessible à partir de la page : http://paris2.dyndns.org:8080/mondrian/

Deux bases  OLAP sont accessibles :

·        Une base exemple Foodmart avec des données réalistes et volumineuses

·        Une base B2C  obtenue à partir du schéma étoile présenté en cours et adapté aux TDs.

 

1. Cube et requêtes OLAP.

·        Visualiser le cube pour ces deux exemples

·        Pour la base B2C :

o       Affichez le nombre d’achats distribués par  Gamme produit (A,B,C,D) ainsi que la distribution graphique.  Conservez le graphique de la distribution pour préparer un rapport.

o       Affichez le nombre d’achats distribués par Sexe (M ou F) et Gamme produit (A,B,C,D) ainsi que la distribution graphique.  Conservez le graphique de la distribution pour préparer un rapport.

o       Affichez le nombre de visites et d’achats distribués par Magasin et par Gamme

o       Visualiser la représentation MDX de chaque requête.

·        Pour la base Foodmart :

o       Affichez le même type de requêtes, sachant que le schéma est beaucoup plus riche et que les données sont plus volumineuses. Les réponses aux requêtes ne sont plus instantanées.

 

2. Entrepôt de données.

Le schéma relationnel MySQL utilisé par l’entrepôt de données est accessible depuis : http://paris2.dyndns.org/etud/php/query.php 

Observez le schéma des 5 tables et en particulier la table transactions qui est l’entrepôt de données. Son schéma est :

 

Resultat de la requête desc transactions


Field

Type

Null

Key

Default

Extra

id_transaction

int(11)

 

PRI

 

auto_increment

id_produit

int(11)

 

 

0

 

id_magasin

int(11)

 

 

0

 

id_client

int(11)

 

 

0

 

annee

int(11)

 

 

0

 

mois

int(11)

 

 

0

 

jour

int(11)

 

 

0

 

heure

int(11)

 

 

0

 

minutes

int(11)

 

 

0

 

secondes

int(11)

 

 

0

 

achat

enum('O','N')

 

 

O

 


 

Resultat de la requête select * from transactions  (5 première lignes)


id_transaction

id_produit

id_magasin

id_client

annee

mois

jour

heure

minutes

secondes

achat

2

11

3

3

2005

9

28

14

43

21

N

3

5

2

2

2005

9

28

14

47

43

N

4

4

1

4

2005

9

28

14

48

9

O

5

12

3

3

2005

9

28

14

49

37

N

….

 

 

 

 

 

 

 

 

 

 

 

A l’aide de scripts « exemple » donnés en TDs,   transférer les enregistrements de sa table Transactions source vers la table transactions target. Observez alors l’influence  de vos données sur les réponses aux requêtes OLAP.