r блестящий: создать заголовки столбцов с write.table в текстовом файле

Я пишу простое блестящее приложение, где я использую три numericInputs. Пользователь вводит три числа, и на стороне сервера я использую этот ввод, чтобы написать .txt использование файла write.table, в .txt файл Я хочу создать заголовки столбцов, похожие на метку каждого ввода, поэтому первое число должно быть в столбце с заголовком 1-го числа и т. д. Я думал, что это будет просто, но я не получаю ожидаемый результат.

Мой код:

write.table(paste(c(input$firstNum, input$secondNum, input$thirdNum), collapse = " | "),
            filename, quote = FALSE, row.names = TRUE,
            col.names = c("1st Number", "2nd Number", "3rd Number"))

Какие-либо предложения?

1 ответ

Решение

Так как вы предоставляете один скаляр (1|3|5) чтобы write.table, он считает, что вы пишете таблицу с одним столбцом. Это явно не то, что вы думаете, что делаете. Преимущество использования write.table является то, что вы даете ему табличную структуру (matrix или же data.frame, как правило) и положу в separator.

write.table(matrix(c(input$firstNum, input$secondNum, input$thirdNum), nr=1), 
            filename, sep='|', quote = FALSE, row.names = TRUE,
            col.names = c("1st Number", "2nd Number", "3rd Number"))

где изменения:

  • обеспечить matrix вместо предварительно сжатой строки, и
  • добавить sep='|' аргумент
Другие вопросы по тегам