[répondu] graphique continu à partir de vecteur incomplet

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Côte Jean-François
Messages : 7
Enregistré le : 27 Juin 2007, 21:11

[répondu] graphique continu à partir de vecteur incomplet

Messagepar Côte Jean-François » 03 Juil 2007, 18:37

Bonjour.
J'aimerai savoir comment tracer une courbe à partir d'un vecteur qui comporte beaucoup de données manquantes.
with R, have a nive day ;)

Renaud Lancelot
Messages : 2484
Enregistré le : 16 Déc 2004, 08:01
Contact :

Messagepar Renaud Lancelot » 04 Juil 2007, 09:49

Votre question est très vague. Voulez-vous interpoler les valeurs manquantes encadrées par des données disponibles ?

Renaud

Côte Jean-François
Messages : 7
Enregistré le : 27 Juin 2007, 21:11

Messagepar Côte Jean-François » 04 Juil 2007, 12:47

En fait j'ai un vecteur de longueur 365 (vecteur représentant une année) mais j'ai environ une donnée par semaine (donc beaucoup de données manquantes) et je voudrais représenter graphiquement ce vecteur sur une longueur de 365 en abscisse pour le comparer à d'autres données (vecteurs) qui ont aussi une longueur de 365 mais qui ne comporte pas de données manquantes.

Mon problème réside dans le fait que lorsque un vecteur comporte des données manquantes, la fenêtre graphique de R ne relie pas les points pour en faire une courbe et c'est ça que j'aimerai pouvoir faire.

Est ce plus clair ?

@Renaud: oui je veux interpoler les données manquantes entre deux données existantes (je veux interpoler de façon linéaire).
with R, have a nive day ;)

Logez Maxime
Messages : 3138
Enregistré le : 26 Sep 2006, 11:35

Messagepar Logez Maxime » 04 Juil 2007, 13:09

Re,

je ne crois pas que ça soit beacoup plus clair mais si tu souhaite juste relier des points entre eux dans la plupart des fonctions graphiques tu peux utilisés type="l", pour relier les points entre eux par une ligne ou type="b" pour afficher à la fois les points et les lignes. Sinon tu as aussi la fonction lines qui trace des lignes dans une fenêtre graphique déjà ouverte, voir aussi la fonction points. Le tout est de savoir si tu veux relier tes points entre eux ou comme le disait Renaud, interpoler une courbe entre tes points.

Maxime

Côte Jean-François
Messages : 7
Enregistré le : 27 Juin 2007, 21:11

Messagepar Côte Jean-François » 04 Juil 2007, 13:42

Oui si j'utilise le type "l" le graphique les points sont reliés, ce que je veux dire et la tout le monde peut faire le test c'est que :

si vous avez un vecteur de longueur 50 par exemple, que vous avez dans ce vecteur une valeur existante suivit de 4 valeurs manquantes (cases vides).

Et bien moi je voudrais que le graphique de mon vecteur représente les données qui composent le vecteur par rapport à une échelle qui en abscisse ferait 50 de longueur.

Ce qui reviendrait en effet à interpoler les valeurs manquantes entre 2 valeurs existantes de façon linéaire.

Mais j'espèrais qu'il existe une option graphique pour règler ce problème.
with R, have a nive day ;)

Logez Maxime
Messages : 3138
Enregistré le : 26 Sep 2006, 11:35

Messagepar Logez Maxime » 04 Juil 2007, 13:57

Re,


Une façon de faire est de tout simplement virer les NA dans ce cas pas de problème de discontinuité dans le graphique :

Code : Tout sélectionner

y <- rnorm(50)
y[20:23] <- NA
x <- 1:50
plot(x[!is.na(y)],na.omit(y),type="l")


Maxime


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité