Как написать файл фиксированной ширины? - PullRequest
0 голосов
/ 18 февраля 2019

Я должен написать текстовый файл с определенным форматом на основе столбцов фиксированной ширины (например, 1-я переменная в столбцах 1-8, 2-я переменная в столбцах 9-15 ...).

исходные данные имеют разную длину, и их необходимо поместить справа от назначенных столбцов.Например: значения «-15,96» и «12,489» должны быть записаны в столбцах 1–8 первой и второй строк, а «-872,6» и «1723,6» - в столбцах 9–15.Это будет:

123456789012345 (n columns)
  -15.96 -872.6
  12.489 1723.6

Как я могу сделать это с R?Теперь у меня есть такая простая таблица:

x <- data.frame(a= sample(-500.5:500.8,4),
                b= sample(-250.6:420.9,4))

1 Ответ

0 голосов
/ 18 февраля 2019

Отформатируйте его с помощью sprintf (help(sprintf) для получения дополнительной информации), а затем напишите строки с помощью writeLines.Пакеты не используются.

filename <- stdout() # change to your file name
Lines <- with(x, sprintf("%8.2f%7.1f", a, b))
writeLines(Lines, filename)
##  -212.50  380.4
##   288.50 -220.6
##   -92.50  102.4
##   381.50  346.4

Вторая строка может быть записана поочередно:

Lines <- do.call("sprintf", c("%8.2f%7.1f", x))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...