Bonjour,
Voici une table :et un petit bout de code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 X Y NB 1: a 0 1 2: b 1 2 3: a 1 3 4: c 0 4 5: a 0 5 6: c 1 6 7: a 1 7Je fais des cumuls de ma variable NB, selon les modalités des variables X et/ou Y.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 DT <- data.table(X=c('a','b','a','c','a','c','a'), Y=c(0,1,1,0,0,1,1), NB=1:7) ; DT Fonction <- function(Data, V1) { print("Sortie 1") ; print(Data[ , .(sum(NB)), by=.( V1=get(V1))]) print("Sortie 2") ; print(Data[ , .(sum(NB)), by=.(Y, V1=get(V1))]) print("Sortie 3") ; print(Data[X != 'a' , .(sum(NB)), by=.( V1=get(V1))]) print("Sortie 4") ; print(Data[X != 'a' , .(sum(NB)), by=.(Y, V1=get(V1))]) } Fonction(DT, 'X')
Dans le 1er cas, je fais un cumul en fonction de X
Dans le 2nd cas, cumul selon X et Y
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 "Sortie 1" V1 NB 1: a 16 2: b 2 3: c 10
Dans le 3ème cas, cumul selon X lorsque X != 'a'
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 "Sortie 2" Y V1 NB 1: 0 a 6 2: 1 b 2 3: 1 a 10 4: 0 c 4 5: 1 c 6
Dans le 4ème cas, cumul selon X et Y lorsque X := 'a'
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 "Sortie 3" V1 NB 1: b 2 2: c 10
On voit qu'il y a un message d'erreur dans ce 4ème cas, que je ne comprends pas du tout.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 "Sortie 4" Error in get(V1) : objet 'X' introuvable
Est-ce que quelqu'un saurait pourquoi 'X' est introuvable, alors qu'il était trouvé dans les précédents cas ?
Partager