如何在R中编写固定宽度的文本文件?

时间:2019-05-14 13:35:20

标签: sql r fixed-width

我有一个数据集,该数据集存储在一个名为“ new”的变量中,我试图将其写入到txt文件中,每列之间具有固定的指定宽度。

我已经尝试过

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

,但是我输入宽度量的顺序似乎与相应的列不对齐,例如,如果我将宽度更改为较低的宽度,则会显示“宽度对于列ColumnC而言太小”消息,即使我指定的宽度是例如columnB的。

我希望能够在每列之间设置指定的宽度,以使每列之间都有特定的间隔。

下面是相同的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,城市,州,ZIP,姓,名,电话,帐户,金额,N,数字

现在,当我在此示例上尝试以下代码时,

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

我得到“'宽度'(57)对于列:V1太小  “宽度”至少应为(237)”

这与我针对真实数据运行此问题类似。

0 个答案:

没有答案