Bonjour,
Dans un data.frame, j'étudie les évènements (1 à 42) en fonction de différents temps. Mon but est de calculer des temps de réactions par exemple.
Mon fichier de base est un fichier txt du type col 1="Action" identifiée par un numéro et col2="Temps"
Dans un premier temps, je trie les évènements qui m'intéressent (ici, 2,12 et 23) grâce à des lignes de types :
J'obtiens ainsi un fichier de ce type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part data2<-data1[which(data1[,1]!="3"),]
J'enlève ensuite les doublons (par ex si j'ai 2 "12") qui se suivent j'enlève le second grâce à ce code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Action Temps 23 2888 12 2898 2 3731 12 4474 23 6717 12 6735 2 7537 12 8240 ... etc.
Pour enlever les valeurs en gras dans mon exemple, j'utilise le même code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 l<-c(1:(nrow(dataB)-1)) ligne.à.enlever<-list() for(i in l) { if(dataB[(i+1),1]==12 & dataB[(i),1]==12){ ligne.à.enlever[[i+1]]<-(i+1)}} ligne.à.enlever<-unlist(ligne.à.enlever) dataB<-dataB[-ligne.à.enlever,]
Mais dans ce cas, j'ai le message d'erreur suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 l<-c(1:(nrow(dataB)-1)) ligne.à.enlever<-list() for(i in l) { if(dataB[(i+2),1]==12 & dataB[(i),1]==12){ ligne.à.enlever[[i+2]]<-(i+2)}} ligne.à.enlever<-unlist(ligne.à.enlever) dataB<-dataB[-ligne.à.enlever,]
J'ai parcouru les 20 dernières pages de ce forum et cherché sur le net, mais je n'ai rien trouvé qui puisse m'aider...Erreur dans if (dataB[(i+2), 1] ==12 & dataB[(i), 1]== 12) { :
valeur manquante là où TRUE / FALSE est requis
Quelqu'un comprend-t-il cette erreur ?
Partager