Tôi cần chia một cột chứa thông tin thành nhiều cột.
Tôi sẽ sử dụng tstrsplit
nhưng cùng loại thông tin không theo cùng một thứ tự giữa các hàng và tôi cần trích xuất tên của cột mới trong biến. Điều quan trọng cần biết: có thể có nhiều mẩu thông tin (các trường để trở thành biến mới) và tôi không biết tất cả chúng, vì vậy tôi không muốn có giải pháp "theo trường".
Dưới đây là một ví dụ về những gì tôi có:
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
Và tôi muốn nhận được:
# chr pos end pos type
#1: chr1 123 4 <NA> 3
#2: chr2 435 6 <NA> <NA>
#3: chr4 120 5 TRUE 2
Một cách đơn giản nhất để có được điều đó sẽ được nhiều đánh giá cao! ( Lưu ý: Tôi không sẵn sàng đi theo cách dplyr / tidyr )