2013-06-10 11 views
5

ich in zwei Vektoren wie dieseKombinationen von Wörtern in zwei Vektoren finden

Der erste Vektor sieht enthielt eine lange Liste von Wörtern haben:

x <- c("considerably", "much", "far") 

Der zweite Vektor sieht wie folgt aus:

y <- c("higher", "lower") 

Ich brauche einen Vektor zurückgegeben, der mögliche Kombinationen von Wörtern aus jedem Vektor auflistet. Mit x und y müsste ich diesen Vektor

zurück
[1] "considerably higher" "considerably lower" "much higher"   "much lower"   
[5] "far higher"   "far lower" 

Daher Worte in Vektor x bevor Worten in Vektor y kommen müssen. Gibt es einen schnellen Weg, dies zu tun?

+1

+1 zum Beispiel Eingabe und gewünschte Ausgabe (eine Erleichterung nach einigen neuen Fragen von anderen OPs!) –

Antwort

6

Sie könnten outer mit paste verwenden, ich denke, das wird ziemlich schnell sein!

as.vector(t(outer(x , y , "paste" ))) 
# [1] "considerably higher" "considerably lower" "much higher"   
# [4] "much lower"   "far higher"   "far lower" 
2

Sie könnten expand.grid verwenden.

sort(apply(X = expand.grid(x, y), MARGIN = 1, FUN = function(x) paste(x[1], x[2], sep = " "))) 
Verwandte Themen