R : Comment utiliser cbind avec des vecteurs de différentes longueurs



Le moyen le plus simple d’utiliser cbind dans R avec des vecteurs de différentes longueurs est de définir les vecteurs sur des longueurs égales à l’aide de la fonction length() .

L’exemple suivant montre comment procéder.

Exemple : utilisation de cbind avec des vecteurs de différentes longueurs dans R

Supposons que nous utilisions cbind pour lier ensemble deux vecteurs de longueurs différentes dans R :

#define two vectors
vec1 <- c(3, 4, 5)
vec2 <- c(1, 6, 4, 4, 7, 6, 9, 8, 7)

#cbind the two vectors together
cbind(vec1, vec2)

      vec1 vec2
 [1,]    3    1
 [2,]    4    6
 [3,]    5    4
 [4,]    3    4
 [5,]    4    7
 [6,]    5    6
 [7,]    3    9
 [8,]    4    8
 [9,]    5    7

La fonction cbind fonctionne avec les deux vecteurs, mais notez que les valeurs du premier vecteur se répètent simplement encore et encore.

C’est ce qu’on appelle le « recyclage » dans R.

Pour remplir les valeurs manquantes pour le vecteur le plus court avec des valeurs NA, vous pouvez utiliser la syntaxe suivante :

#define two vectors
vec1 <- c(3, 4, 5)
vec2 <- c(1, 6, 4, 4, 7, 6, 9, 8, 7)

#calculate max length of vectors
max_length <- max(length(vec1), length(vec2))

#set length of each vector equal to max length
length(vec1) <- max_length                      
length(vec2) <- max_length 

#cbind the two vectors together
cbind(vec1, vec2)

      vec1 vec2
 [1,]    3    1
 [2,]    4    6
 [3,]    5    4
 [4,]   NA    4
 [5,]   NA    7
 [6,]   NA    6
 [7,]   NA    9
 [8,]   NA    8
 [9,]   NA    7

Notez que les valeurs manquantes pour le vecteur le plus court sont désormais remplies par les valeurs NA.

Remarque : Dans cet exemple, nous avons utilisé cbind avec deux vecteurs mais vous pouvez utiliser une syntaxe similaire pour utiliser cbind avec plus de deux vecteurs.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans R :

Comment utiliser cbind dans R (avec exemples)
Comment utiliser rbind dans R (avec exemples)
Comment renommer des colonnes lors de l’utilisation de cbind dans R

Ajouter un commentaire

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