在小标题中添加和删除字符串组件

时间:2018-11-20 20:27:40

标签: r

我有一小段股票名称:

 A tibble: 239 x 3
   symbole     entreprise                secteur              
   <chr>       <chr>                     <chr>                
 1 TSX : AAV   Advantage Oil & Gas       Énergie              
 2 TSX : ABX   Barrick Gold              Matériaux            
 3 TSX : ACM.A Astral Media              Consommation Cyclique
 4 TSX : ACO.X Atco                      Utilitaires          
 5 TSX : AEM   Agnico-Eagle              Matériaux            
 6 TSX : AGF.B La Société de Gestion AGF Finance              
 7 TSX : AGI   Alamos Gold               Matériaux            
 8 TSX : AGU   Agrium                    Matériaux            
 9 TSX : AIM   Aimia                     Consommation Cyclique
10 TSX : ALA   AltaGas                   Énergie              
# ... with 229 more rows

我要删除列名称中的“ TSX:”部分,在每个名称中添加“ .TO”并替换为“。”。在某些名称中以“-”表示。

以使名称“ TSE:ACO.X”变为“ ACO-X.TO” ..... etc .... etc ....

我尝试了几种解决方案,但我得到的唯一是充满点的列!

1 个答案:

答案 0 :(得分:0)

这可以通过一系列gsub / paste来完成,首先删除TSX :,然后替换句点,然后附加.TO。由于mutate的工作方式,我们可以将它们全部作为一个mutate中的一系列tag = value语句放置:

library(dplyr)
df %>% mutate(symbole=gsub("TSX \\: ","",symbole), 
  symbole=gsub("\\.","-",symbole),
  symbole=paste0(symbole,".TO"))