Comment faire une fonction personnalisée dans R ?

La méthode pour faire une fonction personnalisée est similaire celle de Javascript. Il s’agit de declarer la fonction avec « function() » en mettant les paramètres dans les parenthèses (il est possible de définir la valeur par défaut avec =). Le code de la fonction est à mettre entre accolades ({}). Et si il est nécessaire de transmettre une variable, il s’agit de faire appel à return().

Par exemple, si on souhaite faire une fonction personnalisée qui va simplement convertir un data_frame en liste (c’est à dire mettre les données de chaque colonne dans une liste), il s’agirait de procéder ainsi :

maFonction <- function(dataframe){
  newList <- list()
  nb_col <- ncol(dataframe)
  for (i in 1:nb_col){
    # A noter ici que pour mettre le vecteur de données dans la liste, il s'agit de faire appel au niveau "inferieur" ([[ ]])
    newList[[i]] <- dataframe[[i]]
    # Le nom de la colonne est repris dans la liste
    names(newList)[i] <- colnames(dataframe)[i]
  }
  return(newList)
}

A savoir que pour appliquer une fonction sur des données avec une méthode itérative, il est possible de faire appel à des fonctions qui vont simplifier la tâche (pour gérer l’iteration) : lapply, sapply, apply

Pour + d’infos :

https://delladata.fr/les-fonctions-lapply-sapply-apply/

0.00 avg. rating (0% score) - 0 votes

Laissez un commentaire

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