Eu preciso dividir uma coluna que contém informações em várias colunas.
Eu usaria, tstrsplit
mas o mesmo tipo de informação não está na mesma ordem entre as linhas e preciso extrair o nome da nova coluna dentro da variável. Importante saber: pode haver muitas informações (campos para se tornarem novas variáveis) e eu não conheço todas elas, por isso não quero uma solução "campo por campo".
Abaixo está um exemplo do que tenho:
library(data.table)
myDT <- structure(list(chr = c("chr1", "chr2", "chr4"), pos = c(123L,
435L, 120L), info = c("type=3;end=4", "end=6", "end=5;pos=TRUE;type=2"
)), class = c("data.table", "data.frame"), row.names = c(NA,-3L))
# chr pos info
#1: chr1 123 type=3;end=4
#2: chr2 435 end=6
#3: chr4 120 end=5;pos=TRUE;type=2
E eu gostaria de obter:
# chr pos end pos type
#1: chr1 123 4 <NA> 3
#2: chr2 435 6 <NA> <NA>
#3: chr4 120 5 TRUE 2
Uma maneira mais simples de conseguir isso seria muito apreciada! ( Nota: não estou disposto a seguir o caminho dplyr / tidyr )