Всем привет и заранее спасибо за вашу помощь.
В R я отправляю команду внешней программе Windows с помощью system(command)
, которая, в свою очередь, выводит строки (с несколькими значениями в строке), которые я вижу непосредственно в консоли R. Выглядят они примерно так:
a,b,c,d,e,f,g,h
1,2,3,4,5,6,7,8
3,4,5,7,1,3,4,9
7,5,3,1,8,1,5,7
Что я хотел бы сделать, так это создать массив, который имеет верхнюю строку в качестве имен столбцов, а каждая последующая строка из ввода должна быть значениями, которые входят в эти столбцы. Любая помощь в выполнении этой работы будет очень признательна.
Это мой первый набег на эту территорию, поэтому я не могу понять, как это сделать. Я вмешался в дела scan()
, pipe()
и readLines()
, но безуспешно. У меня нет особой привязанности к system(command)
, любая функция, которая будет запускать исполняемый файл, который даст мне нужный результат, мне подходит, если она помогает достичь того, чего я хочу.
1 ответ
Комментарий, сделанный пользователем1935457, помог.
read.table(text = system(command, intern=TRUE), sep = ",", header=TRUE)
Похожие вопросы
Новые вопросы
r
R — это бесплатный язык программирования с открытым исходным кодом и программная среда для статистических вычислений, биоинформатики, визуализации и общих вычислений. Пожалуйста, используйте минимально воспроизводимые примеры, которые другие могут запустить с помощью копирования и вставки. Показать желаемый результат полностью. Используйте dput() для данных и укажите все небазовые пакеты с помощью library(). Не вставляйте изображения для данных или кода, вместо этого используйте блоки кода с отступом. Для вопросов по статистике используйте https://stats.stackexchange.com.
intern
дляsystem
? Предположительно возвращает вывод как вектор символов. Тогда вы могли бы сделать что-нибудь вродеread.table(text = system(command, intern=TRUE), sep = ",", header=TRUE
)