【问题标题】:How do I control the format of columns when I use the write.csv function?使用 write.csv 函数时如何控制列的格式?
【发布时间】:2018-10-16 22:02:05
【问题描述】:

我在 R 中创建了一个数据框,我的其中一列将日期如 01/08/2018 (dd/mm/yyyy) 转换为文本形式 Aug-18 (mmm-yy)。但是,当我使用 write.csv 函数将其写入 csv 时,Excel 会自动将其转换为日期。

有没有办法可以将列类型指定为“文本”,以便 Excel 不会将其更改为日期格式?

【问题讨论】:

  • 你为什么不马上写信给xlsx?谷歌:r openxlsx
  • @Jaap 我正要写同样的。 Excel 估计来自 CSV 的“正确”类型。使用openxlsx 控制内容!
  • Excel 的日期、文本等格式取决于 Excel,而不是 R。CSV 文件中没有格式或数据类型——它只是文本
  • @AndreElrico 我主要结合了openxlsx 中的writeDataaddStyle,这样您就可以对Excel 中的显示方式进行一些控制。

标签: r excel


【解决方案1】:

恕我直言,一个简单的技巧是用空格填充您的日期列,例如df$mydate <- paste(' ', df$mydate, sep='')。这会阻止 Excel 将文本翻译为日期。

在进行 RExcel 转换时,我已经开始定期对各种有风险的列执行此操作。

取自这里:https://support.office.com/en-us/article/stop-automatically-changing-numbers-to-dates-452bd2db-cc96-47d1-81e4-72cec11c4ed8

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-28
    • 1970-01-01
    • 1970-01-01
    • 2013-10-29
    • 2021-05-05
    • 1970-01-01
    • 1970-01-01
    • 2022-10-04
    相关资源
    最近更新 更多