2009-09-17 11 views
19

Me gustaría ser capaz de crear una secuencia de letras en R (para ayudar en la importación de datos desde un archivo SPSS)Crear una lista secuencial de las letras con R

Es muy fácil crear una secuencia de números, por ejemplo:

seq(1,1000) 
[1] 1 2 3 4 5 6 ... 1000 

paste("something_",1:12,sep="") 
[1] something1 something2 ... something12 

Pero ¿hay alguna funcionalidad para anexar, pegar, o la creación de secuencias de letras como esta?

paste("This_",a:z,sep="") 
[1]This_a This_b This_c ... This_4z 

¡Gracias de antemano!

Respuesta

33

Es esto lo que está buscando?

> paste("This_",letters,sep="") 

> [1] "This_a" "This_b" "This_c" "This_d" "This_e" "This_f" "This_g" "This_h" 
    [9] "This_i" "This_j" "This_k" "This_l" "This_m" "This_n" "This_o" "This_p" 
    [17] "This_q" "This_r" "This_s" "This_t" "This_u" "This_v" "This_w" "This_x" 
    [25] "This_y" "This_z" 
+0

Sí, exactamente, pero ¿hay alguna manera de hacer que solo vaya a "i" o "j" o "x" en la secuencia? –

+2

¡Lo encontré! pegar (letras [1:12]) da una a través de j! ¡Gracias! –

14

¿Se nos fijamos en

?LETTERS 

y no hace eso lo que quiere? De lo contrario, hay paste() y funciones relacionadas.

Editar: Tal vez el collapse= a pegar es lo que necesita:

R> replicate(5, paste(sample(LETTERS, 10, replace=TRUE), collapse="")) 
[1] "OHZBIYEFMD" "UINBOFEIXN" "UORJZATYNT" "ZNPWNBFFXJ" "ZOKYMTCDKZ" 
R> 
+0

Gracias por la nota en? Letras! Colapso no es exactamente lo que estoy buscando. –

9

Gracias chicos! ¡Me lo imaginé!

paste(letters[1:26]) 

¡Salud!

1

de "a" a la "z" sus

pegar (letras)

para "A" a la "Z" sus

pegar (letras)

Y para imprimir específica letras en la secuencia, dicen si desea que sólo j, k & l

de impresión (letras [10:12])

Cuestiones relacionadas