R arrays : fonctionnement des arrays

Comme dans presque tous les autres langages de programmation, les développeurs travaillant en programmation en R peuvent également enregistrer des éléments de même type de données dans la structure de données de type Array et bénéficier de fonctionnalités utiles.

Pourquoi utilise-t-on des arrays en R ?

Souvent appelés tableaux en français, les arrays sont une structure de données standard, comme les chaînes de caractères en R, qui aide principalement pour l’organisation des données et leur accès. Grâce à l’indexation, les programmateurs peuvent accéder efficacement aux données enregistrées dans un array.

Même des opérations qui concernent la totalité de l’ensemble de données peuvent être exécutées efficacement et facilement avec les arrays. Les arrays R avec plusieurs dimensions permettent en outre de représenter des données multidimensionnelles, par exemple en matrices ou tenseurs.

Creating arrays in R : procédure

Les programmateurs peuvent créer des arrays en R ayant différentes dimensions. Que vous souhaitiez représenter un vecteur simple ou une structure multidimensionnelle complexe, tout est possible avec un array en R. Des arrays bidimensionnels sont souvent utilisés, qui peuvent se présenter sous la forme d’un tableau ou d’une matrice.

Par exemple, un array bidimensionnel simple contenant les chiffres de 1 à 6 peut être créé comme suit grâce à la fonction « array() » :

exempledarray <- array(1:6, dim = c(2, 3))
R

Dans cet exemple, vous attribuez deux paramètres à la fonction « array() » : vous indiquez tout d’abord la plage de valeurs « 1:6 » que votre array en R contient. Le deuxième paramètre représente les dimensions de l’array. Dans cet exemple, un array de 2x3 est créé.

Note

Veillez à ce qu’au sein d’un array en R, seuls des éléments du même type de données puissent être enregistrés. Si vous souhaitez enregistrer différents types de données dans une même structure de données, nous vous conseillons de consulter le type de données R « list ».

Avec « array() », vous pouvez non seulement créer de nouveaux arrays, mais également convertir en arrays des vecteurs ou matrices existant déjà dans votre code. Pour ce faire, appelez simplement la fonction avec l’élément que vous souhaitez classer dans un array et indiquez les dimensions souhaitées :


vector <- 1:9
vector_als_array <- array(vector, dim = c(3,3))
# Conversion de matrices en arrays
matrix <- matrix(1:9, nrow = 3, ncol = 3)
matrix_als_array <- array(matrix, dim = dim(matrix))
R

Indexation : apprenez à accéder aux éléments des arrays

Vous pouvez accéder aux éléments de votre array grâce à l’indexation. Les indices de l’élément souhaité, comme dans de nombreux autres langages de programmation, sont indiqués entre crochets. Pour les arrays multidimensionnels, vous pouvez également afficher une rangée ou une colonne complète en plus d’éléments spécifiques.

exempledarray <- array(1:6, dim = c(2, 3))
# Accès à l’élément dans la première ligne, deuxième colonne
element <- exempledarray[1, 2]
# Accès à la première ligne
ligne <- exempledarray[, 1]
# Accès à la première colonne
colonne <- exempledarray[1, ]
R
Note

Si vous utilisez déjà d’autres langages de programmation mais êtes encore débutant en programmation avec R, l’indexation en R peut vous sembler surprenante. Contrairement à de nombreux autres langages, le décompte ne débute pas à 0, mais commence à partir de 1, comme le comptage en langue naturelle.

Calculer avec des arrays

Avec les arrays, vous pouvez appliquer diverses fonctions mathématiques à tout un volume de données. Par exemple, vous pouvez calculer la somme de deux arrays, ce que vous pouvez vous représenter comme une addition de deux matrices. Pour ce faire, veillez à ce que les arrays aient les mêmes dimensions ou longueurs, que vous pouvez trouver grâce à la fonction R Array length.

array1 <- array(1:4, dim = c(2,2))
array2 <- array(5:8, dim = c(2,2))
résultat <- array1 + array2
R

Outre les opérations arithmétiques de base, disponibles comme opérateurs R, différentes fonctions sont également définies sur les arrays en R afin de vous aider à effectuer divers calculs. Par exemple, vous pouvez calculer la moyenne de tous les éléments d’un array avec la commande R « mean() » :

moyenne <- mean(array1)
R

Autre avantage, à l’aide de la fonction R-Array « apply(array, MARGIN, FUN) », vous pouvez appliquer diverses fonctions à une dimension de votre choix. La fonction possède différents paramètres :

  • array : array faisant l’objet de l’examen
  • MARGIN : dimension pour laquelle la fonction doit être utilisée où 1 vaut pour les lignes et 2 pour les colonnes.
  • FUN : fonction vectorielle qui restitue un résultat scalaire.

Voici un exemple d’utilisation de « apply() » :

# Créer un array
testarray <- array(1:6, dim = c(2,3))
# Application de apply()
moyenne_colonnes <- apply(array, MARGIN = 2, FUN = mean)
# Affichage du résultat
print(moyenne_colonnes)
R

L’affichage du code de programmation ci-dessus retourne trois valeurs indiquant chacune la valeur moyenne de la colonne : 1,5, 3,5 5,5.