2017-06-01 5 views
0

Um Tausende von zufälligen Punkten zu kennzeichnen, brauche ich einen riesigen Vektor mit Etiketten. Aus logistischen Gründen würde Ich mag, dass alle Saiten Länge hat 2. Was ich habe, so weit ist diese ZeichenfolgeR. riesige Vektor von 2 Zeichenfolgen

sl = paste(letters[1],letters,":0",sep="") 
for (i in 2:26){ 
    ll = paste(letters[i],letters,":0",sep="") 
    sl = c(sl,ll) 
} 
SL = paste(LETTERS[1],LETTERS,":0",sep="") 
for (i in 2:26){ 
    ll = paste(LETTERS[i],LETTERS,":0",sep="") 
    SL = c(SL,ll) 
} 
S1 = paste(LETTERS[1],0:9,":0",sep="") 
for (i in 2:26){ 
    ll = paste(LETTERS[i],1:10,":0",sep="") 
    SL = c(SL,ll) 
} 
s1 = paste(letters[1],0:9,":0",sep="") 
for (i in 2:26){ 
    ll = paste(letters[i],1:10,":0",sep="") 
    SL = c(SL,ll) 
} 
sl=c(sl,SL,S1,s1) 

dieser Vektor hat 1872 nur Streicher. Beachten Sie, dass meine Fragen sind

  1. Kennen Sie eine elegantere Möglichkeit, so etwas zu haben? Ich baue ein Paket und finde diese Linien überhaupt nicht elegant.
  2. Wissen Sie, wie kann ich einfach die Länge des Vektors mit normaleren Strings der Länge 2 erhöhen?

Jede Hilfe wird geschätzt.

+0

"Um Tausende von zufälligen Punkten zu kennzeichnen" Plotten Sie sie auf einer Hauswand? Ich sehe keinen Sinn in dieser Übung. – Roland

Antwort

2

Die Beschränkung auf zwei Zeichenketten und einschließlich aller Permutationen von c(letters, LETTERS, 0:9) gibt Ihnen ein Maximum von 62^2 = 3844 Möglichkeiten. Das vollständige Vektor kann über

paste0(
    as.vector(
    outer(c(letters, LETTERS, 0:9), 
      c(letters, LETTERS, 0:9), 
      paste0) 
), 
    ":0" 
) 

generiert werden, wenn Sie mehr als das Etikett benötigen, müssen Sie entweder enthalten mehr Zeichen zur Auswahl, oder die Länge der Saite zu erhöhen.

Allerdings denke ich, dass eine solche Etikettierung möglicherweise nicht so nützlich ist, wie Sie hoffen. Wenn Sie solche Punkte auf einer Parzelle markieren, besteht die Gefahr, dass die Parzelle unlesbar wird. Sind Sie sicher, dass dies der Ansatz ist, den Sie brauchen?

Verwandte Themen