# substring() function in R : extraire des informations de chaînes de caractères

La fonction `substring()` de R est idéale pour la préparation de données en vue d’analyses, notamment lorsqu’il est nécessaire de transformer des données textuelles en formats plus structurés.

## `substring()` function in R : c’est quoi ?

Dans R, `substring()` est une fonction intégrée qui sélectionne des sous-chaînes de caractères dans une chaîne existante. Elle permet de définir précisément les index de début et de fin afin d’isoler la partie de la chaîne de caractères souhaitée. R `substring()` trouve de nombreuses applications, du nettoyage de données à l’extraction d’informations spécifiques à partir de données textuelles non structurées. Vous pouvez par exemple utiliser cette méthode pour déterminer des codes postaux à partir d’adresses ou pour extraire des composantes de date à partir d’horodatages.

La fonction `substring()` en R offre une flexibilité appréciable lorsqu’il est nécessaire d’**exercer un contrôle précis** sur la position et la longueur de la sous-chaîne à extraire. Cette capacité la rend particulièrement utile dans l’analyse de données et la préparation de textes pour des analyses plus approfondies, en contribuant à organiser les données de manière structurée.

## La syntaxe de la fonction `substring()` dans R

La fonction R `substring()` renvoie une **chaîne de caractères extraite**. Elle accepte les paramètres suivants :

```R
substring(x, first, last)
```

- **`x`** : c’est la chaîne de caractères à partir de laquelle la sous-chaîne doit être extraite.
- **`first`** : il s’agit de l’index du premier caractère de la chaîne à extraire.
- **`last`** : cela représente l’index du dernier caractère de la sous-chaîne à extraire.

Voici un exemple concret :

```R
original_string <- "data analysis"
result <- substring(original_string, 1, 4)
print(result)
# Sortie : data
```

Nous sélectionnons la sous-chaîne de l’index 1 à l’index 4 dans la chaîne de caractères `"data analysis"` et la stockons dans la variable `result`. Le résultat est `"data"`.

## Utilisation pratique de R `substring()`

Lors du **traitement d’enregistrements**, vous devez souvent sélectionner, manipuler ou supprimer certaines parties de chaînes de caractères. La fonction `substring()` de R vous permet de le faire de différentes manières.

### Extraire des caractères avec la fonction R `substring()`

Il est possible d’assigner des indices à des variables et de les passer comme paramètres à la fonction `substring()`.

```R
# Chaîne de caractères originale
original_string <- "Data Science"
# Définition des indices pour l’extraction
start_index <- 6
end_index <- 12
# Extraction d’une sous-chaîne avec substring()
extracted_substring <- substring(original_string, start_index, end_index)
print(extracted_substring)
# Sortie : Science
```

Cet exemple illustre l’utilisation de la fonction `substring()` dans R. À partir de la chaîne `"Data Science"`, une sous-chaîne est extraite en définissant les variables `start_index` pour l’indice de départ et `end_index` pour l’indice de fin. La sous-chaîne `"Science"` est extraite en incluant le caractère à la position 12, car dans cet exemple, l’indice de fin est inclusif.

### Manipuler des chaînes avec la fonction `substring()` dans R

Nous constituons un dataframe `df` contenant des identifiants, ainsi que l’âge et la profession correspondants. Nous appliquons la fonction `substring()` pour insérer un espace à la deuxième position dans chaque chaîne de caractères de la colonne `"ID"`.

```R
# Création d’un dataframe exemple
df <- data.frame(
    ID = c("01235", "02345", "04531"),
    Age = c(25, 30, 22),
    Occupation = c("Engineer", "Doctor", "Teacher")
)
# Insertion d’un espace en seconde position dans la colonne "ID"
df$ID <- paste(substring(df$ID, 1, 1), " ", substring(df$ID, 2))
# Affichage du dataframe modifié
print("Dataframe modifié :")
print(df)
```

Dans cet exemple, `substring(df$ID, 1, 1)` extrait le premier caractère de chaque identifiant tandis que `substring(df$ID, 2)` récupère le reste de la chaîne à partir du deuxième caractère. La fonction [R `paste()`](https://www.ionos.com/fr-be/digitalguide/sites-internet/developpement-web/r-paste/) est utilisée pour insérer un espace entre ces deux segments. Le résultat est affiché dans la colonne `ID` du dataframe.

La sortie correcte devrait ressembler à ceci :

```R
Modified Data Frame:
    ID     Age  Occupation
1  0 1235  25    Engineer
2  0 2345  30    Doctor
3  0 4531  22    Teacher
```

Conseil Pour travailler avec des chaînes de caractères dans R, nous vous recommandons également le tutoriel sur R gsub() et sub() de notre Digital Guide.


This is a markdown version of: [https://www.ionos.com/fr-be/digitalguide/sites-internet/developpement-web/fonction-r-substring/](https://www.ionos.com/fr-be/digitalguide/sites-internet/developpement-web/fonction-r-substring/) for AI/LLM consumption.