Разделение строк на несколько столбцов - PullRequest
0 голосов
/ 17 ноября 2018

Я извлек данные из таблиц PDF, но он возвращает вектор со строками.Я бы хотел стать матрицей.

Например,

[1] "XX/R011680/2   Fun          9-10   XX/R008108/2     No fun     *N/A"
[2] "XX/X002103/2   Fun         8-8.9   XX/S00257X/2     No fun     *N/A"
[3] "XX/X011443/2   Fun         8-8.9"
[4] "XX/X008728/2   No fun      7-7.9" 

можно как-то разрезать по пробелам.Таким, что это становится матрицей, как это.

     [,1]            [,2]          [,3]       [,4]              [,5]        [,6]
[1] "XX/X011680/2"   "Fun"         "9-10"   "XX/X008108/2"     "No fun"    "*N/A"
[2] "XX/X002103/2"   "Fun"         "8-8.9"  "XX/X00257X/2"     "No fun"    "*N/A"
[3] "XX/X011443/2"   "Fun"         "8-8.9"     NA               NA          NA
[4] "XX/X008728/2"   "No fun"      "7-7.9"     NA               NA          NA 

или вот так, если проще?Положение строк не имеет значения, как я могу разобраться позже.

   [,1]              [,2]          [,3] 
[1] "XX/X011680/2"   "Fun"        "9-10" 
[2] "XX/X008108/2"   "No fun"     "*N/A"
[3] "XX/X002103/2"   "Fun"        "8-8.9"   
[4] "XX/X00257X/2"   "No fun"     "*N/A"
[5] "XX/X011443/2"   "Fun"        "8-8.9"     
[6] "XX/X008728/2"   "No fun"     "7-7.9"   

1 Ответ

0 голосов
/ 18 ноября 2018

Предполагая, что входные данные L, воспроизводимые в примечании ниже, удаляют двойные кавычки, переводят 2 или более пробелов в запятую и затем читают с read.table:

L2 <- gsub('"', '', gsub('  +', ',', L))
read.table(text = L2, as.is = TRUE, sep = ",", fill = TRUE)

Примечание

L <- 
c("\"XX/R011680/2   Fun          9-10   XX/R008108/2     No fun     *N/A\"", 
"\"XX/X002103/2   Fun         8-8.9   XX/S00257X/2     No fun     *N/A\"", 
"\"XX/X011443/2   Fun         8-8.9\"", 
"\"XX/X008728/2   No fun      7-7.9\""
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...