Я пытаюсь прочитать в CSV с этого сайта . Каждая строка заканчивается \t
, что заставляет read.delim()
и read.table()
видеть строки данных как имеющие на 1 столбец больше, чем строка заголовка, что вызывает проблемы.
Я могу легко удалить \t
с конца строк, используя этот код:
file.set <- "data_source.txt"
temp <- file.set %>%
readLines() %>%
sub(" \\t$", "", .) %>%
writeLines()
Я не могу понять, как передать результат команды sub()
в read.delim()
без записи файла, используя writeLines()
. Я пробовал следующий код:
temp <- file.set %>%
readLines() %>%
sub(" \\t$", "", .) %>%
read.delim(quote = NULL)
# Error in file(file, "rt") : invalid 'description' argument
temp <- file.set %>%
readLines() %>%
sub(" \\t$", "", .) %>%
writeLines() %>%
read.delim(quote = NULL)
# [prints info from file.set to console]
# Error in read.table(file = file, header = header, sep = sep, quote = quote, :
# 'file' must be a character string or connection
Проблема, вероятно, в том, что я не понимаю, как правильно использовать соединения (или что использование соединения - просто неправильный способ сделать это). Учебники, которые я нашел по использованию соединений в R, в основном касаются получения данных из удаленных баз данных, что заставляет меня думать, что я делаю это неправильно.