Bonjour,

je voulais appliquer à une fonction le même schéma de traitement que celui ci-dessous

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
l1<- c(1,2,3)
l2<- c(5,6,7)
l3<-c(10,11,12)
tableau <- tibble(l1,l2,l3)
 
test <- function(donnees)
{
  t <-sum(donnees)
  return(t)
}
 
 
res= c(
  test(tableau[,1]),
  test(tableau[,2]),
  test(tableau[,3])
 
 
)
 
apply(tableau,2,test)

Ici res donne le même résultat que l'apply final

cependant avec une fonction plus compexe et d'autres données, j'obtiens une erreur que je n'arrive pas à fixer avec une erreur sur la fonction pull que je n'arrive pas à cerner.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
l1<- c("01","02","03")
l2<- c("10","020","030")
l3<-c('xx','rr','tt')
tableau <- tibble(l1,l2,l3)
 
modalite_correcte=c("01","02","03","tt")
 
test <- function(donnees,modalite_reference=modalite_correcte)
{
  t <- dplyr::pull(donnees) %in% modalite_reference
return(sum(t))
  }
 
res= c(
        test(tableau[,1]),
        test(tableau[,2]),
        test(tableau[,3])
        )
 
apply(tableau,2,test)

Error in UseMethod("pull") : no applicable method for 'pull' applied to an object of classe "character"
Je dois louper quelque chose de gros, R débutant, je pense que c'est une notion d'objet ou quelque chose comme ça que je loupe.

Si vous pouviez m'indiquer des pistes...

Merci