首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >write.table列不与空白对齐

write.table列不与空白对齐
EN

Stack Overflow用户
提问于 2016-01-27 03:07:30
回答 2查看 326关注 0票数 0

我有一个几乎是空白的数据帧,可以使用下面的输入来读取:

代码语言:javascript
复制
structure(list(var1 = c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L
), var2 = c(NA, NA, NA, NA, NA, NA, NA, NA, NA, NA), var3 = c(NA, 
NA, NA, NA, NA, NA, NA, NA, NA, NA), var4 = c(NA, NA, NA, NA, 
NA, NA, NA, NA, NA, NA), var5 = c(NA, NA, NA, NA, NA, NA, NA, 
NA, NA, NA), var6 = c(NA, NA, NA, NA, NA, NA, NA, NA, NA, NA), 
    var7 = c(1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L), var8 = c(NA, 
    NA, NA, NA, NA, NA, NA, NA, NA, NA), var9 = c(NA, NA, NA, 
    NA, NA, NA, NA, NA, NA, NA), var10 = c(NA, NA, NA, NA, NA, 
    NA, NA, NA, NA, NA)), .Names = c("var1", "var2", "var3", 
"var4", "var5", "var6", "var7", "var8", "var9", "var10"), row.names = c(NA, 
10L), class = "data.frame")

我想写这个到一个TXT文件中,它看起来一切都是正确的格式,可以很容易地在Excel中打开(我知道write.xlsx,虽然它解决了这个问题,但我希望文件是txt格式的)。

代码语言:javascript
复制
write.table(df3, file="test.txt", quote = FALSE, na = " \t", row.names = FALSE)

我尝试过这样做,但是值不能正确对齐:例如,应该在var7下的值显示在var6 intead上。此外,虽然Excel设法将列作为单独的列读取,但包含变量名称的标题行将作为一个长向量读取。怎么回事?

EN

回答 2

Stack Overflow用户

发布于 2016-01-27 03:13:02

使用write.table(df3, file="test.txt", quote = FALSE, sep = "\t", na="", row.names = FALSE)请注意,使用sep = "\t"而不是na = " \t"并设置na=""

票数 1
EN

Stack Overflow用户

发布于 2016-01-27 03:19:26

如果我写道:

代码语言:javascript
复制
write.table(df3, file="test.txt", quote = FALSE, sep="\t", row.names = FALSE, na="")

然后它就起作用了。我遵循了Jilber关于使用sep="\t"的建议,并对na选项执行了此操作,否则NAs将显示在文件中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35021828

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档