如何将dataframe写入文件,以便无论列值的长度如何,这些值都是相邻的,没有空格
我有一个如下所示的数据帧:如何将dataframe写入文件,以便无论列值的长度如何,这些值都是相邻的,没有空格,r,dplyr,data.table,fixed-width,R,Dplyr,Data.table,Fixed Width,我有一个如下所示的数据帧: V1 V2 V3 1 06 1 06 1 1 0 08 1 08 0 1 0 06 1 06 0 1 1061 0611 0081 0801 0061 0601 1 061 061 1 0 081 080 1 0 061 060 1 我想以固定宽度格式写入文本文件,使其如下所示: V1 V2 V3 1 06 1 06 1 1 0 08 1 08 0 1 0 06 1 06 0 1 1061 0611 0081 0801 0061 060
V1 V2 V3
1 06 1
06 1 1
0 08 1
08 0 1
0 06 1
06 0 1
1061
0611
0081
0801
0061
0601
1 061
061 1
0 081
080 1
0 061
060 1
我想以固定宽度格式写入文本文件,使其如下所示:
V1 V2 V3
1 06 1
06 1 1
0 08 1
08 0 1
0 06 1
06 0 1
1061
0611
0081
0801
0061
0601
1 061
061 1
0 081
080 1
0 061
060 1
目前,我正在使用gdata中的write.fwf:
write.fwf(colnames=FALSE, x=df,file='file.txt', sep="")
但这会产生如下输出:
V1 V2 V3
1 06 1
06 1 1
0 08 1
08 0 1
0 06 1
06 0 1
1061
0611
0081
0801
0061
0601
1 061
061 1
0 081
080 1
0 061
060 1
。。这些空间被保留下来
我想我用rowwise()mutate()将每一行转换为一个值,然后输出,或者使用read.table将每一行转换为一行——尽管这似乎会吃掉前导零,这是我需要的
但是我想看看完成这项任务最直观的方法是什么。您可以按照注释中的建议将其转换为R中的向量,或者使用:
write.table(df, "file.txt", sep = "", quote = FALSE, col.names = FALSE)
do.call(paste0,DF)
@Roland你能详细说明一下吗?-do.call(paste0,df)中出错:一元运算符的参数无效。do.call前面似乎有一个-
,它是一元运算符。顺便说一句,关于“空间被保留”--您没有提供包含空间的可复制数据。。。我猜我编辑的内容一定不正确;也许你可以纠正它。(我将恢复编辑。)没错。你的解决方案很棒!如果你或@roland想发帖,我会接受。