#r #csv
#r #csv
Вопрос:
Я действительно просто хочу заголовок csv-файла в R, не уверен, какой лучший способ это сделать.
Я подумал что-то вроде
read.csv(readLines("file.csv", n=3))
может сработать, но, конечно, вывод readLines
не является допустимым соединением. Я подумал, что, возможно, здесь есть что-то умное stdin
, но не могу понять.
Я ищу что-то лучшее, чем просто записывать выходные данные readLines в file и считывать их обратно или вручную выполнять синтаксический анализ заголовка, который уже выполняется read.csv. (Конечно, эти подходы будут работать, но они кажутся немного грубыми; в более общем плане я пытаюсь понять, как лучше перенаправить текст как соединение).
Ответ №1:
Существует nrows=
аргумент read.table()
, который передается через.
Пример:
R> dim(read.csv("/usr/local/lib/R/site-library/fortunes/fortunes/fortunes.csv",
nrows=3, header=TRUE, sep=";"))
[1] 3 5
R>
(Простите sep=";"
, но я хотел выбрать файл, который, вероятно, будет у нас обоих …)
Комментарии:
1. Моя благодарность! Не уверен, как я это упустил. Все еще любопытно, как превратить текст в соединение без записи в файл, но я думаю, это отдельная проблема.
2. @cboettig
?textConnection
?3. @cboettig вы могли бы подумать о создании вопроса для этой конкретной проблемы, с которой вы столкнулись, и ответить на него. Это создаст ссылку для других людей с той же проблемой.