【问题标题】:Exporting the dataframe to text file将数据框导出到文本文件
【发布时间】:2020-09-05 12:08:58
【问题描述】:

有没有办法将数据框写入文本文件,并在写入时给出列的位置和长度。

df <- data.frame(
    col1 <- c(1, 2, 3),
    col2 <- c("name1", "name2", "name3"),
    col3 <- c("place1", "place2", "place3")
)

我想将 df 导出到 col1 长度 = 1 且位置 = 1 的文本文件中; col2 的长度 = 20,位置 = 2,col3 的长度 = 60,位置 = 21

【问题讨论】:

  • 请包含一个具体的代码示例。带有示例输入数据框和示例输出文件。谢谢!
  • df 有 3 列。第 1 列包含值 1、2、3;第 2 列包含 name1、name2、name3,第 3 列包含地点 1、地点 2、地点 3 输出文本文件应包含第一行为 1name1 place1,因为要求是第 1 列:长度为 1,位置应为 1;第 2 列:长度 7 和位置 2;第 3 列长度 20 和位置 10
  • 谢谢!我希望你不介意,但我编辑了你的帖子。不幸的是,我仍然不知道你的输出应该是什么样子。请提供df 的预期输出的确切示例。谢谢。

标签: export-to-csv


【解决方案1】:

我不知道你到底想要什么,但你可以看看write.table()

write.table(df, file="df.txt")

我希望这会有所帮助。

编辑

您还可以查看how to write into .txt file in R?Getting R to write to .txt with carriage returns。在那里,他们建议人们可以而且实际上在某些情况下应该考虑fwrite

编辑 2 如果你的输出 txt 应该是这样的

1--name1--place1
2--name2--place2
3--name3--place3

你需要

write.table(
    df, file="df.txt", row.names=FALSE, col.names=FALSE, sep="--", quote=FALSE)

【讨论】:

  • 在sas中,我们使用了put语句,eg: data_null_;设置输入:文件'test.txt';把@1 col1 $1。 @2 col2 20 美元。 @ 21 col3 60 美元。 python中的等价物是什么
  • 很遗憾,我仍然不知道您的文件应该是什么样子。但是,我已经编辑了我的答案。请检查并标记为正确答案,如果正确,请给它一个upvote。
  • 嗨,MacOS,文本文件中的输出如下所示:
    1name1                地点1
    2名称2                地点2
    3name3                 place3
    基本上,col1 和 col2 之间没有空格,因为 col1 的长度为 1
    ,col2 的位置为 2。此外,由于 col2 的长度为 20,col3 从 21 位置开始。
  • 对不起,我不能关注你。您应该将此信息添加到问题中,并准确填写您想要的内容。另外,请相应地格式化所有内容。谢谢!
猜你喜欢
  • 1970-01-01
  • 2013-06-22
  • 1970-01-01
  • 1970-01-01
  • 2018-08-06
  • 2021-12-22
  • 2020-07-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多