погрузить фрейм данных в файл .txt

У меня есть 4-колоночный фрейм данных с именем mytable с сотнями строк. Это выглядит как

id         name                   count        rate
234     uert [email protected] erwafrw23 weq    34           2
324     awrt%rw-fref-sfr-32 eq    78           4
329     jiowerfhguy qwhrb         90           8
123     234huib|f|wer fwfqwasgre  54           3

так как это показывает, имя имеет пробелы и специальные символы. поэтому я не могу использовать write.table для сохранения data.frame. Я старался

sink('myfile.txt')
print(mytable,right=F)
sink()

Но я столкнулся с проблемой, заключающейся в том, что иногда имя бывает настолько длинным, что четыре столбца не могут отображаться вместе на одной странице, то есть третий или четвертый столбец может переходить на следующую страницу.

Есть ли способ настроить ширину таблицы в файл .txt? Или, кроме приемника (), любой другой код может быть использован для сохранения фрейма данных в файл .txt? Благодарю.

Ответы на вопрос(2)

write.table() должно быть хорошо. просто укажите разделитель, как","или что-то еще не появляется в вашемname колонка:

    my.df <- data.frame(ID=c(234,324,329,123), 
      name = c("uert [email protected] erwafrw23 weq"," awrt%rw-fref-sfr-32 eq","jiowerfhguy qwhrb","234huib|f|wer fwfqwasgre"),
      count = c(34,78,90,54), rate = c(2,4,8,3))

    write.table(my.df, file = "my.df.txt", sep = ",", col.names = colnames(my.df))

    # read it back in
    my.df2 <- read.table(file = "my.df.txt",sep = ",", header = TRUE, stringsAsFactors = FALSE) 

    all(my.df == my.df2) 
    TRUE

кажется, смущены разницей между файлом и выводом на консоль. Нет ограничений на ширину линий сwrite.tableПо крайней мере, не те, которые вы подойдете в обычном использовании. можете контролировать ширину экрана консоли сoptions(width=72) и использоватьcapture.output(print(mytable)) таким образом, выход соответствует любым неустановленным требованиям к ширине.

Ваш ответ на вопрос