Чтение файла с разделителями в виде строки с текстовыми полями без кавычек в R - PullRequest
0 голосов
/ 17 июня 2019

Я пытаюсь загрузить файл с разделителями | в R, и у меня возникают трудности с загрузкой текстовой части файла, которая плохо анализируется.

Данные выглядят следующим образом:

c("ENMI|Close_Type|ENMIN|Close_Number|ENMIND|Close_Date_Time|Close_Description|Close_Status|Report_Type|Close_Text", "", "1001|GFP|194|3287|141|01/2020 12:00:00 AM|Summary Report|Signed|DIST|Report Status:  Signed",  "                         ;", "", "NAME: Rabbit, Roger                  UNIT NUMBER: 110 toontown",  "", "", "", "For 01/2019 - 01/2020",  "", "", "", "", "", "",  "", "", "when the cat ran past;",  "the mouse resting;",  "beneath", "the shade of a pine tree.", "", "The cat was too busy",  "to appreciate the opportunity." )

Если я попытаюсь использовать read.csv как обычно, в частности:

df <- read.csv(text = c("ENMI|Close_Type|ENMIN|Close_Number|ENMIND|Close_Date_Time|Close_Description|Close_Status|Report_Type|Close_Text", 
                        "", "1001|GFP|194|3287|141|01/2020 12:00:00 AM|Summary Report|Signed|DIST|Report Status:  Signed", 
                        "                             ;", "", "NAME: Rabbit, Roger                  UNIT NUMBER: 110 toontown", 
                        "", "", "", "For 01/2019 - 01/2020", "", "", "", "", "", "", 
                        "", "", "when the cat ran past;", "the mouse resting;", "beneath", 
                        "the shade of a pine tree.", "", "The cat was too busy", "to appreciate the opportunity."), 
               header = T, 
               sep = "|", 
               quote = "")

Текст загружается в первый столбец в ENMI, когда яЯ хотел бы, чтобы он был под Close_Text.

> str(df)

'data.frame':   10 obs. of  10 variables:
 $ ENMI             : Factor w/ 10 levels "                             ;",..: 2 1 5 4 10 7 3 8 6 9
 $ Close_Type       : Factor w/ 2 levels "","GFP": 2 1 1 1 1 1 1 1 1 1
 $ ENMIN            : int  194 NA NA NA NA NA NA NA NA NA
 $ Close_Number     : int  3287 NA NA NA NA NA NA NA NA NA
 $ ENMIND           : int  141 NA NA NA NA NA NA NA NA NA
 $ Close_Date_Time  : Factor w/ 2 levels "","01/2020 12:00:00 AM": 2 1 1 1 1 1 1 1 1 1
 $ Close_Description: Factor w/ 2 levels "","Summary Report": 2 1 1 1 1 1 1 1 1 1
 $ Close_Status     : Factor w/ 2 levels "","Signed": 2 1 1 1 1 1 1 1 1 1
 $ Report_Type      : Factor w/ 2 levels "","DIST": 2 1 1 1 1 1 1 1 1 1
 $ Close_Text       : Factor w/ 2 levels "","Report Status:  Signed": 2 1 1 1 1 1 1 1 1 1

Я бы ожидал, что фрейм данных будет загружен как одно наблюдение из десяти переменных.

Любая помощь, либо найти правильный вопросспросить, или если кто-то задавал этот вопрос раньше, было бы невероятно полезно - иначе я найду другой способ разобрать его, вероятно, через readLines и strsplit.

Спасибо всем за время!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...