AIDE MÉMOIRE DU PACKAGE NLME DE R



Documents pareils
Une introduction. Lionel RIOU FRANÇA. Septembre 2008

Exemples d application

Exercices M1 SES Ana Fermin ( fermin.perso.math.cnrs.fr/ ) 14 Avril 2015

Introduction aux Statistiques et à l utilisation du logiciel R

STATISTIQUES. UE Modélisation pour la biologie

Chapitre 7. Statistique des échantillons gaussiens. 7.1 Projection de vecteurs gaussiens

Exercice : la frontière des portefeuilles optimaux sans actif certain

Régression linéaire. Nicolas Turenne INRA

TABLE DES MATIÈRES. Bruxelles, De Boeck, 2011, 736 p.

Modèles pour données répétées

Introduction à l approche bootstrap

Données longitudinales et modèles de survie

Fonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples

Analyse des durées de vie avec le logiciel R

LA NOTATION STATISTIQUE DES EMPRUNTEURS OU «SCORING»

Feuille 6 : Tests. Peut-on dire que l usine a respecté ses engagements? Faire un test d hypothèses pour y répondre.

Analyse de la variance Comparaison de plusieurs moyennes

Un exemple de régression logistique sous

Introduction à l'actuariat

Le Modèle Linéaire par l exemple :

Température corporelle d un castor (une petite introduction aux séries temporelles)

Le modèle de régression linéaire

MODELE A CORRECTION D ERREUR ET APPLICATIONS

Aide-mémoire de statistique appliquée à la biologie

Tests d indépendance en analyse multivariée et tests de normalité dans les modèles ARMA

Econométrie La régression linéaire simple et multiple

Couples de variables aléatoires discrètes

Séries Statistiques Simples

Introduction. Préambule. Le contexte

Gestion obligataire passive

SPHINX Logiciel de dépouillement d enquêtes

IBM SPSS Regression 21

Arbres binaires de décision

Evaluation des modèles non-linéaires à effets mixtes

PROBABILITES ET STATISTIQUE I&II

FORMULAIRE DE STATISTIQUES

Comparaison de populations

Évaluation de la régression bornée

Principe de symétrisation pour la construction d un test adaptatif

Recherche dans un tableau

Statistiques Descriptives à une dimension

La place de SAS dans l'informatique décisionnelle

NOTATIONS PRÉLIMINAIRES

Logiciel XLSTAT version rue Damrémont PARIS

TP 1 : 1 Calculs en binaire, octal et hexadécimal

Cours 02 : Problème général de la programmation linéaire

(VM(t i ),Q(t i+j ),VM(t i+j ))

données en connaissance et en actions?

Relation entre deux variables : estimation de la corrélation linéaire

La problématique des tests. Cours V. 7 mars Comment quantifier la performance d un test? Hypothèses simples et composites

Equilibrage de charge multi-critère pour les serveurs DNS(SEC)

Lire ; Compter ; Tester... avec R

Statistiques. Rappels de cours et travaux dirigés. Master 1 Biologie et technologie du végétal. Année

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.

TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts

La classification automatique de données quantitatives

3. Caractéristiques et fonctions d une v.a.

Statistiques descriptives

Analyse de corrélation Étude des dépendances - Variables quantitatives

Tests paramétriques de comparaison de 2 moyennes Exercices commentés José LABARERE

PROGRAMME (Susceptible de modifications)

RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/ Présentation. 1.2 Ressources

Cours de méthodes de scoring

1. Vocabulaire : Introduction au tableau élémentaire

CONCOURS D ENTREE A L ECOLE DE 2007 CONCOURS EXTERNE. Cinquième épreuve d admissibilité STATISTIQUE. (durée : cinq heures)

INF6304 Interfaces Intelligentes

LES GENERATEURS DE NOMBRES ALEATOIRES

Élément 424b Introduction à la statistique descriptive

choisir H 1 quand H 0 est vraie - fausse alarme

Traitement des données avec Microsoft EXCEL 2010

L ANALYSE EN COMPOSANTES PRINCIPALES (A.C.P.) Pierre-Louis GONZALEZ

Introduction à la Statistique Inférentielle

COMMENT MAITRISER LA GESTION DES APPROVISIONNEMENTS ET DES STOCKS DE MEDICAMENTS

Comment se servir de cet ouvrage? Chaque chapitre présente une étape de la méthodologie

Probabilités stationnaires d une chaîne de Markov sur TI-nspire Louis Parent, ing., MBA École de technologie supérieure, Montréal, Québec 1

Le modèle de Black et Scholes

MODIFICATIONS DES PRINCIPES DIRECTEURS CONCERNANT LA RÉDACTION DES DÉFINITIONS RELATIVES AU CLASSEMENT

I3, Probabilités 2014 Travaux Dirigés F BM F BM F BM F BM F B M F B M F B M F B M

1 Complément sur la projection du nuage des individus

Tests statistiques et régressions logistiques sous R, avec prise en compte des plans d échantillonnage complexes

Cours 9 : Plans à plusieurs facteurs

t 100. = 8 ; le pourcentage de réduction est : 8 % 1 t Le pourcentage d'évolution (appelé aussi taux d'évolution) est le nombre :

Algorithmes d'apprentissage

YAO : Un logiciel pour les modèles

Faut-il pondérer? ...Ou l'éternelle question de l'économètre confronté à un problème de sondage. Laurent Davezies et Xavier D'Haultf uille.

Principe d un test statistique

Statistiques Appliquées à l Expérimentation en Sciences Humaines. Christophe Lalanne, Sébastien Georges, Christophe Pallier

SweetyPix, mode d'emploi

Econométrie et applications

Introduction à l économétrie : Spécifications, formes fonctionnelles, hétéroscédasticité et variables instrumentales

UFR de Sciences Economiques Année TESTS PARAMÉTRIQUES

Cours Langage C/C++ Programmation modulaire

L Econométrie des Données de Panel

Chapitre 3. Les distributions à deux variables

Déroulement d un projet en DATA MINING, préparation et analyse des données. Walid AYADI

Tests non-paramétriques de non-effet et d adéquation pour des covariables fonctionnelles

Compte-rendu de projet de Système de gestion de base de données

Cours (7) de statistiques à distance, élaboré par Zarrouk Fayçal, ISSEP Ksar-Said, LES STATISTIQUES INFERENTIELLES

Approche par groupe de gènes pour les données longitudinales d expression génique avec une application dans un essai vaccinal contre le VIH

Modèle GARCH Application à la prévision de la volatilité

Transcription:

AIDE MÉMOIRE DU PACKAGE NLME DE R D. CONCORDET R est un logiciel de statistique professionnel qui permet d'eectuer un grand nombre d'analyses. Il est composé d'un c ur qui est capable d'interpréter et d'exécuter des commandes. Les commandes les plus simples sont présentes dans le c ur du logiciel. Les autres, plus ou moins spéciques du type d'analyse à eectuer, sont décrites dans des bibliothèques nommées package. La bibliothèque qui contient les commandes permettant l'analyse des modèle Non Linéaire à Eets Mixtes est nommée nlme. L'objet de cette feuille est de proposer la description d'une sélection de commandes de R ainsi que des commandes du package nlme. 1. Quelques commandes générales de R <- (ie inférieur suivi de moins) est l'opérateur d'aectation. Porc<-read.table("C:\\Documents and Settings\\Didier\\Bureau\\ porc.txt",header=true) stocke les données contenues dans le chier C:\\Documents and Settings\\Didier\\Bureau\\porc.txt dans le jeu de données reconnu par R nommé Porc. L'option header=true permet de déclarer que la première ligne du chier porc.txt contient le nom des variables contenues dans chacune des colonnes de ce chier. attach(porc) permet de charger en mémoire le jeu de données Porc rendant ainsi toutes les variables de ce jeu de données directement accessibles. detach(porc) décharge de la mémoire de R le jeu de données Porc. fix(porc) charge le jeu de données Porc dans l'éditeur de R et permet ainsi la modication de quelques données. library(biblio) charge en mémoire les fonctions de la bibliothèque nommée biblio. fac<-as.factor(fac) déclare la variable fac comme facteur. plot(x,y) permet de représenter la variable y en fonction de la variable x. Date: 1/10/2007. 1

2 D. CONCORDET 2. Quelques commandes de nlme frame1<-groupeddata(formula, data, outer, inner) Cette commande permet de structurer les données et faciliter leur analyse. Son utilisation requiert une bonne compréhension des diérentes sources de variation de la variable réponse étudiée. formula est une formule de la forme Y covariable group où Y est la variable réponse, covariable est une variable explicative qui peut être soit un régresseur soit un facteur et group est le facteur de répétition (en général l'individu). Lorsqu'il n'y a pas de covariable, on remplace covariable par 1. Lorsque le facteur fac 1 est hiérarchisé dans les niveaux du facteur group, il est possible de le déclarer de deux façons : 1 ) Y covariable group/fac 1 ou 2 ) inner= fac 1. Les hiérarchies multiples sont déclarées avec le symbole slash (/) par exemple, group/fac 1 /fac 2 permet de déclarer que fac 2 est niché dans fac 1 lui même niché dans group. Les facteurs dans lesquels le facteur group est niché sont déclarés avec la commande outer. Par exemple, outer= fac 1 fac 2 permet de déclarer que le facteur group est niché dans le croisement des facteurs fac 1 et fac 2. data est le nom du jeu de données pour lequel cette organisation doit être appliquée. frame1 est le nom de l'objet dans lequel cette organisation est stockée. plot(frame1) représente graphiquement les données organisées comme décrit dans frame1. ana1<-lme(modèle fixe, data, random) permet d'estimer les paramètres d'un modèle linéaire à eets mixtes. Les résultats de cette estimation sont stockées dans l'objet ana1. modèle fixe contient une description de la partie xe du modèle. C'est donc une expression de la forme Y 1 + reg 1 + reg 2 + fac 1 + fac 2 + reg 1 fac 1 où reg 1 et reg 2 sont des régresseurs et fac 1 et fac 2 des facteurs. data est le nom du jeu de données ou du frame sur lequel on souhaite eectuer cette analyse. random est une expression de la forme random= 1+reg 1 +reg 2 +fac 1 +fac 2 +reg 1 fac 1 group qui permet de déclarer la partie aléatoire du modèle. Les variables explicatives reg 1, reg 2, fac 1, fac 2 et group ont le même sens que précédemment.

AIDE MÉMOIRE DU PACKAGE NLME DE R 3 On peut utiliser la notation des / vue dans la dénition des frames pour décrire une organisation spécique. summary(ana1) ache les résultats de l'analyse stockée dans ana1 intervals(ana1) calcul et ache les intervalles de conance et de prédictions de paramètres et des eets aléatoires du modèle décrit dans ana1 plot(intervals(ana1)) représente graphiquement ces intervals plot(ana1) représente graphiquement les résidus de l'analyse ana1 en fonction des valeurs prédites. qqnorm(ana1, resid(., type = "p"), abline = c(0, 1)) fait le QQplot des résidus de ana1 qqnorm(ana1, ranef(.)) fait le QQplot des eets aléatoires de ana1 anova(ana1,ana2) fait le test de rapport de vraisemblance des modèles décrits dans ana1 et ana2. Attention, ces modèles doivent être emboîtés.

4 D. CONCORDET 3. Un exemple commenté An de bien séparer les commandes, les commentaires et les sorties du logiciel nous utiliserons pour cet exemple des polices de caractères diérentes. Les commandes seront en police courrier et elles commenceront toutes par l'invite de commande de R représentée par le symbole >. Les commentaires seront en texte normal et ils seront précédés du symbole #, alors que les sorties du logiciel seront, comme les commandes, en courrier mais sans invite de commande. Maintenant, l'histoire... Un même dose d'un médicament a été administrée par voie intraveineuse à trente patients. An d'étudier la dispersion des évolutions des concentrations au cours du temps de ce médicament, des prélèvements de sang ont été réalisés à des instants choisis. Après dosage, on dispose des concentrations de médicament pour chacun de ces instants de prélèvements. Par convention, on décide que l'instant 0 est l'instant auquel le médicament est administré. Le chier exemple.txt" contient trois colonnes nommées : Ind, Temps, concentration qui contiennent respectivement l'identication du patient, l'instant de prélèvement, la concentration. >ex1<-read.table("c:\\documents and Settings\\Didier CONCORDET\\Bureau\\M2R sept 07\\exemple.txt",header=TRUE) # charge les données dans le jeu de données nommés ex1 >ex1 #présente les données sous forme de liste Ind Temps concentration 1 1 1 44.52 2 1 2 47.96 3 1 5 27.38 4 1 10 16.61 5 1 20 7.66... > attach(ex1) # charge le jeu de données ex1 en mémoire et le rend donc utilisable > plot(temps,log(concentration))# le graphique (cf 1 représente le log des concentrations en fonction du temps plot(temps[ind==1],log(concentration[ind==1])) # le graphique (cf 2 représente le log des concentrations en fonction du temps mais simplement pour l'individu Ind = 1 > library(nlme) # charge la bibliothèque nlme en mémoire et rend donc ses commandes utilisables > Ind<-as.factor(Ind) # déclare Ind comme facteur. Vous avez compris que la variable réponse Y est la variable log(concentration), que le

AIDE MÉMOIRE DU PACKAGE NLME DE R 5 log(concentration) 1.5 2.0 2.5 3.0 3.5 4.0 5 10 15 20 Temps Figure 1. le log des concentrations à vaguement l'air d'évoluer linéairement avec le temps. Il y a une hétéroscédasticité marquée : la variance du log de la concentration semble augmenter avec le temps. log(concentration[ind == 1]) 2.0 2.5 3.0 3.5 5 10 15 20 Temps[Ind == 1] Figure 2. Pour cet individu le log des concentrations à l'air d'évoluer linéairement avec le temps mais sans hétéroscédasticité. On pourrait suspecter que l'hétéroscédasticité vue sur le graphique 1 soit due à des évolutions diérentes entre individus. Peut-être qu'un modèle linéaire à eets mixtes pourrait décrire cela? temps est un régresseur, et qu'on dispose d'une courbe par Individu. La commande suivante permet de déclarer cette organisation et de la stocker dans le frame nommé ex2. > ex2<-groupeddata(log(concentration) Temps Ind, ex1) >ex2 #présente les données sous forme de liste. On peut remarquer sur cet exemple que les options de commandes inner et outer peuvent être omises lorsque la description de la structure ne les requiert pas. Grouped Data: log(concentration) Temps Ind

6 D. CONCORDET Ind Temps concentration 1 1 1 44.52 2 1 2 47.96 3 1 5 27.38 4 1 10 16.61 5 1 20 7.66... > plot(ex2) # donne le graphique 3. En regardant ces petit graphiques, on arrive à se log(concentration) 4.0 3.5 3.0 2.5 2.0 1.5 4.0 3.5 3.0 2.5 2.0 1.5 28 20 9 3 13 14 26 21 5 25 24 16 29 19 8 11 4 23 6 1 30 7 10 2 27 17 22 4.0 3.5 3.0 2.5 2.0 1.5 18 12 15 4.0 3.5 3.0 2.5 2.0 1.5 Temps Figure 3. Représente pour chaque individu l'évolution au cours du temps du logarithme des concentrations. Le numéro de l'individu est indiqué juste au dessus de chaque graphique. convaincre de la linéarité de la variation du log des concentrations avec le temps. Aussi, voilà un modèle qui pourrait être adopté au moins en première intention : Y ij = A i + B i t ij + ε ij, j = 1... 5, i = 1... 30, où Y ij est le log de la concentration mesurée sur le individu à un instant jème ième t ij après l'administration de la dose de médicament, les vecteurs (A i, B i ) sont indépendants, gaussiens, de moyenne (a, b) et de variancecovariance ( σ 2 Σ = A C AB C AB les ε ij sont des variables aléatoires mutuellement indépendantes de même loi N (0, σ 2 ). Elles sont par ailleurs indépendantes des (A i, B i ) i. Ce modèle peut se ré-écrire de la façon σ 2 B ),

suivante : AIDE MÉMOIRE DU PACKAGE NLME DE R 7 où Y ij = a + bt } {{ ij } + ηi A + ηi B t } {{ ij } + ε ij partie fixe du modèle partie aléatoire du modèle ( η A i, η B i ) }{{} résidu, j = 1... 5, i = 1... 30, i iid N (0, Σ). Ce dernier modèle s'écrit de la façon suivante dans nlme : > ana1<-lme(log(concentration) 1+Temps,ex2, random = 1+Temps Ind) # log(concentration) 1+Temps est la partie xe du modèle et random = 1+Temps Ind traduit la partie aléatoire du modèle. Les résidus sont implicitement supposés gaussiens homoscédastiques. Les résultats de l'analyse sont stockés dans ana1. > ana1 # renvoie les résultats de l'analyse Linear mixed-effects model fit by REML Data: ex2 Log-restricted-likelihood: 75.1305 # log vraisemblance restreinte Fixed: log(concentration) 1 + Temps (Intercept) Temps 3.9076723-0.1050142 # â et ˆb Random effects: Formula: 1 + Temps Ind Structure: General positive-definite, Log-Cholesky parametrization StdDev Corr (Intercept) 0.12739881 (Intr) # ˆσ 2 A Temps 0.01359827-0.045 # ˆσ 2 B et corrélation entre A et B = C AB / ˆσ 2 Aˆσ2 B Residual 0.09112162 # écart-type résiduel ˆσ 2 Number of Observations: 150 # nombre total d'observations Number of Groups: 30 # nombre total d'individus La commande summary donne en plus les écarts-type des estimations : > summary(ana1) Linear mixed-effects model fit by REML Data: ex2 AIC BIC loglik

8 D. CONCORDET -138.261-120.2777 75.1305 Random effects: Formula: 1 + Temps Ind Structure: General positive-definite, Log-Cholesky parametrization StdDev Corr (Intercept) 0.12739881 (Intr) Temps 0.01359827-0.045 Residual 0.09112162 Fixed: log(concentration) 1 + Temps Value Std.Error DF t-value p-value (Intercept) 3.907672 0.025741947 119 151.80174 0 Temps -0.105014 0.002703931 119-38.83759 0 Correlation: (Intr) Temps -0.162 Standardized Within-Group Residuals: Min Q1 Med Q3 Max -1.83800816-0.57519541-0.07883175 0.59921714 2.49604903# extrêmes et quartiles des résidus ˆε ij Number of Observations: 150 Number of Groups: 30 Si vous désirez en plus les intervalles de conance de tous les paramètres du modèle, tapez : > intervals(ana1)# les sorties obtenues avec cette commande ne sont pas reproduites ici. > plot(ana1) # représente les résidus en fonction des valeurs prédites par le modèle (cf graphique 4). >qqnorm(ana1, resid(., type = "p"), abline = c(0, 1))# renvoie le QQplot des résidus (cf graphique 5). >qqnorm(ana1, ranef(.)) # renvoie le QQplot des Âi et ˆB i (cf graphique 6).

AIDE MÉMOIRE DU PACKAGE NLME DE R 9 2 Standardized residuals 1 0 1 2 1.5 2.0 2.5 3.0 3.5 4.0 Fitted values Figure 4. Les résidus en fonction des valeurs prédites par le modèle. Ce graphique est utile pour détecter une hétéroscédasticité. Dans cet exemple, on peut hésiter et conclure à l'homoscédasticité ou voir un cône et conclure à l'hétéroscédasticité. Une solution, au moins pour cet exemple, consiste à écrire un modèle non linéaire. Nous verrons en cours comment traiter cela. 2 Quantiles of standard normal 1 0 1 2 2 1 0 1 2 Standardized residuals Figure 5. On observe des points qui ondulent autour d'une droite : l'hypothèse de normalité des résidus semble ici raisonnable.

10 D. CONCORDET (Intercept) Temps 2 1 Quantiles of standard normal 0 1 2 0.2 0.1 0.0 0.1 0.2 0.03 0.02 0.01 0.00 0.01 0.02 Random effects Figure 6. L'hypothèse de de normalité des eets aléatoires semble raisonnable.