Si j'ai un vecteur de type caractère, comment puis-je concaténer les valeurs en chaîne? Voici comment je le ferais avec paste () :
sdata = c('a', 'b', 'c')
paste(sdata[1], sdata[2], sdata[3], sep ='')
céder "abc"
.
Mais bien sûr, cela ne fonctionne que si je connais la longueur des données à l' avance.
sdata
peut contenir des chaînes qui sont toutes de la même longueur ou de longueurs variables, alorspaste(sdata, sep = '', collapse = '')
il faut l'utiliser pour éviter des résultats inattendus.La réponse de Matt est certainement la bonne réponse. Cependant, voici une solution alternative à des fins de soulagement comique:
la source
collapse
paramètre n'existait pas. donc pas beaucoup de soulagement comique si vous avez récemment dû faire quelque chose de très similaire :)Vous pouvez utiliser la
stri_paste
fonction avec lecollapse
paramètre dustringi
package comme ceci:Et quelques repères:
la source
Pour
sdata
:Pour un vecteur d'entiers:
la source
La réponse de Matt Turner est certainement la bonne réponse. Cependant, dans l'esprit de la réponse de Ken Williams, vous pourriez également faire:
la source
Voici une petite fonction utilitaire qui réduit une liste de valeurs nommée ou non en une seule chaîne pour une impression plus facile. Il imprimera également la ligne de code elle-même. C'est de ma liste d'exemples dans la page R.
Générez des listes nommées ou non:
Voici une fonction qui convertira la liste nommée ou non en chaîne:
Test de la fonction avec les listes créées préalablement:
Test de la fonction avec un sous-ensemble d'éléments de liste:
la source