【发布时间】:2014-09-25 14:22:38
【问题描述】:
我在 R 中有一组包含字符和数字的数据。我知道我无法将它们保存在数据框中,因为列必须具有相同的类型。因此我将它们保存在一个列表中。
有没有办法将此列表保存到 Excel 工作表中,以便将数字保存为数字,将字符保存为字符?
到目前为止,我一直在使用 XLConnect,它适用于数据框,其中您的列包含所有数字或所有字符
提前致谢
例子:
我有几个不同数量的测量值(我们称它们为 a 和 b)。
这些度量可以是数字(数字)或“n.d”。 (特点)。例如 3 次测量: 第一:a = 5, b =“n.d.” 第二:a = 3,b = 4 第三:a = "n.d.", b = "n.d."
编辑:
Roland 给出的解决方案效果很好:
将数据框中的缺失值编码为NA,以使列全部为数字。
然后使用setMissingValue(wb, value = "n.d.")
将丢失的单元格设置为“n.d.”在 Excel 工作表中
非常感谢您的宝贵时间和帮助
【问题讨论】:
-
数据框只是一种特殊的列表,因此您应该能够在同一数据框中同时包含字符和数字变量(只要它们位于不同的列中)。您能否举例说明您的数据采用什么格式?
-
这正是我的问题!我的数据由某些数量的几个测量值组成,这些测量值可以给出一个数字或“n.d.”。因此,大多数时候我在同一列中都有数字和字符。
-
你应该将你的缺失值编码为
NA,而不是"n.d.",它可以是R中的数字类型。 -
@Roland 我当然也想到了这个解决方案。但是,我更喜欢直接从 R 以最终格式执行此操作的方法,而不必事后在 Excel 中搜索和替换相应的单元格
-
我不使用 XLConnect,但应该可以指定
na字符串,如write.csv。对 R 中的缺失值使用不同于NA的任何内容只是自找麻烦。