2017-02-06 87 views
0

我有一個名爲「Productdes」列,它保存數千行以產品說明,如:創建提取特定單詞列

Productdes

Varitas mágicas de Harry Potter 
Figuras de Star Wars 
Coleccionismo de Harry Potter 
Espadas de Juego de Tronos 
Bola de Dragon Z 
Estatuas de The Witcher (El Brujo) 
Figuras de Chucky El Muñeco Diabólico 
Cascos de Star Wars 
Espadas de The Legend of Zelda 
Estatuas de Los Vengadores (The Avengers) 

我想創建一個名爲「新列主題爲」提取從該行各對應行的某些詞語,如:

Theme 
Harry Potter 
Star Wars 
Harry Potter 
Juego de Tronos 
Dragon Z 
El Brujo 
Chucky El Muñeco Diabólico 
Star Wars 
Zelda 
Los Vengadores 

我用下面的函數,但沒有成功:

mutate(Theme = str_extract(Productdes, 
          c("Harry Potter",Star Wars","Juego de Tronos","Dragon Z", 
          "El Brujo","Chucky El Muñeco Diabólico","Zelda", 
          "Los Vengadores")) 

我希望有任何幫助。 感謝

+0

你需要這些字符串與'paste' – akrun

回答

0

我們可以paste串的vector以創建單個單用分隔符|str_extract

v1 <- c("Harry Potter","Star Wars","Juego de Tronos","Dragon Z", 
         "El Brujo","Chucky El Muñeco Diabólico","Zelda", 
         "Los Vengadores") 

df1$Theme <- str_extract(df1$Productdes, paste(v1, collapse="|")) 
df1$Theme 
#[1] "Harry Potter"    "Star Wars"     "Harry Potter"    "Juego de Tronos"   
#[5] "Dragon Z"     "El Brujo"     "Chucky El Muñeco Diabólico" "Star Wars"     
#[9] "Zelda"      "Los Vengadores" 
+0

@PabloUgarte粘貼在一起被用作模式參數感謝您的答覆。你也可以勾選[here](http://stackoverflow.com/help/someone-answers) – akrun