Comment réparer dans R : erreur : tentative d’application d’une non-fonction



Une erreur que vous pouvez rencontrer dans R est :

Error: attempt to apply non-function

Cette erreur se produit généralement lorsque vous essayez de multiplier des valeurs dans R mais que vous oubliez d’inclure un signe de multiplication ( * ).

Ce didacticiel explique exactement comment gérer cette erreur dans deux scénarios différents.

Scénario 1 : Résoudre l’erreur dans la multiplication de trames de données

Supposons que nous créions le bloc de données suivant dans R :

#create data frame
df <- data.frame(x=c(1, 2, 6, 7),
                 y=c(3, 5, 5, 8))

#view data frame
df

  x y
1 1 3
2 2 5
3 6 5
4 7 8

Supposons maintenant que nous essayions de créer une nouvelle colonne égale à la colonne x multipliée par 10 :

#attempt to create new column
df$x_times_10 <- df$x(10)

Error: attempt to apply non-function

Nous recevons une erreur car nous avons oublié d’inclure un signe de multiplication ( * ).

Pour résoudre cette erreur, il faut inclure un signe de multiplication :

#create new column
df$x_times_10 <- df$x*(10)

#view updated data frame
df

  x y x_times_10
1 1 3         10
2 2 5         20
3 6 5         60
4 7 8         70

Scénario 2 : Résoudre l’erreur de multiplication vectorielle

Supposons que nous créons deux vecteurs dans R et tentons de multiplier ensemble leurs éléments correspondants :

#create two vectors
x <- c(1, 2, 2, 2, 4, 5, 6)
y <- c(5, 6, 8, 7, 8, 8, 9)

#attempt to multiply corresponding elements in vectors
(x)(y)

Error: attempt to apply non-function

Nous recevons une erreur car nous n’avons pas inclus de signe de multiplication.

Pour résoudre cette erreur, il faut inclure un signe de multiplication :

#multiply corresponding elements in vectors
(x)*(y)

[1]  5 12 16 14 32 40 54

Notez qu’aucune erreur n’est produite cette fois.

Ressources additionnelles

Les didacticiels suivants expliquent comment corriger d’autres erreurs courantes dans R :

Comment réparer : la condition a une longueur > 1 et seul le premier élément sera utilisé
Comment réparer : argument non numérique de l’opérateur binaire
Comment réparer : dim(X) doit avoir une longueur positive
Comment réparer : erreur dans la sélection des arguments inutilisés

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *