Я предлагаю как удалить начальные/конечные кавычки, так и превратить двойные кавычки подряд в одинарные двойные кавычки. Последнее имеет решающее значение в случае, если некоторые строки сами содержат запятые, как в
"1,""A mostly harmless string"",11"
"2,""Another mostly harmless string"",12"
"3,""These, commas, cause, trouble"",13"
Удаление только начальных/конечных кавычек при сохранении обратной кавычки приводит к тому, что функция read.csv()
создает 6 переменных, поскольку она интерпретирует все запятые в последней строке как разделители значений. Таким образом, полный код может выглядеть так:
data.text <- readLines("fullofquotes.csv") # Reads data from file into a character vector.
data.text <- gsub("^\"|\"$", "", data.text) # Removes initial/terminal quotes.
data.text <- gsub("\"\"", "\"", data.text) # Replaces "" by ".
data <- read.csv(text=data.text, header=FALSE)
Или, конечно, все в одну строку
data <- read.csv(text=gsub("\"\"", "\"", gsub("^\"|\"$", "", readLines("fullofquotes.csv", header=FALSE))))
person
Honza Zouhar
schedule
09.10.2015
quote
вариантread.csv
. - person   schedule 09.07.2014