Estoy leyendo archivos de datos en formato de texto usando readLines
. La primera 'columna' es un texto complicado que no necesito. Las siguientes columnas contienen datos que necesito. La primera 'columna' y los datos están separados por dos puntos (:). Deseo dividir cada fila en el primer punto y eliminar la cadena de texto resultante, manteniendo solo los datos.División de cadenas en el primer punto
A continuación se muestra un archivo de datos de ejemplo. Una posible complicación es que una línea de datos contiene múltiples dos puntos. Esa línea puede en algún momento convertirse en mi encabezado. Entonces, probablemente no debería dividirme en cada colon, solo en el primer colon.
my.data <- "first string of text..: aa : bb : cc
next string ........ : 2 0 2
third string......1990: 7 6 5
last string : 4 2 3"
my.data2 <- readLines(textConnection(my.data))
my.data2
He tratado código presentado aquí:
Split on first comma in string
y aquí:
CódigoR: removing the last three dots from a string
en el primer enlace de arriba parece dividir solamente en los primeros dos puntos de la primera fila. Es probable que el código en el segundo enlace haga lo que yo quiera, pero es demasiado complejo como para modificarlo satisfactoriamente hasta el momento.
Éstos son los datos espero obtener, momento en el que simplemente puedo reemplazar a los dos puntos restantes en la primera fila con espacios vacíos usando una muy simple gsub
declaración:
aa : bb : cc
2 0 2
7 6 5
4 2 3
Lo siento si esto es un duplicado de una publicación que no he localizado y gracias por cualquier consejo o asistencia.
Gracias por la respuesta y la excelente explicación. –
+1 para la explicación –