Я пытаюсь загрузить файл с разделителями |
в 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
.
Спасибо всем за время!