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

У меня есть набор данных, который хранится в переменной с именем «new», и я пытаюсь записать это в текстовый файл с фиксированной указанной шириной между каждым столбцом.

Я уже пробовал

write.fwf(new, file = "test.txt", width = c(57,20,10,6,19,12,10,18), colnames = FALSE, sep = "")

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

Я хочу установить указанную ширину между каждым столбцомчтобы между каждым из них было определенное количество пробелов.

Ниже приведен тот же формат файла txt, я просто изменил все имена:

SPRN55 TEST ST                                            LOS ANGELES         CA 11111 DOE                 JOHN          1112223333           5555555510.00                N                                                  1111111111     
SPRN8658 TEST DRIVE                                       LOS ANGELES         CA 11111 DOE                 JOHN          1112223333           5555555510.00                N                                                  1111111111     
SPRN787 TEST DRIVE                                        LOS ANGELES         CA 11111 DOE                 JOHN          1112223333           5555555510.00                N                                                  1111111111     

Столбцы расположены в порядкеADDR, город, штат, почтовый индекс, фамилия, имя, телефон, учетная запись, сумма, N, номер

Теперь, когда я попробовал приведенный ниже код для этого образца,

write.fwf(mydata, file = "test1.txt", width = c(57,20,3), colnames = FALSE, sep = "")

Iget "width" (57) было слишком мало для столбцов: V1 width должно быть не меньше (237) "

Это похоже на проблему, когда я запускаю это для моих реальных данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...