我的大部分统计工作都是在 R 中进行的,因此我对 Excel 宏一无所知,必须寻求帮助。我的研究所提供了 MS Office 2010(目前),所以我使用它来快速编辑我的数据集,然后将它们保存为制表符受限的 .txt 文件,并在 R 中打开它们。我使用 .xlsx 文件格式,因为我可以在同一个文件中保存多个数据集。这使得跟踪不同的项目变得更加容易。
但是,Excel 毕竟是 Excel。每当我尝试将其另存为 txt 文件时,它都会首先询问我是否要替换我之前创建的 txt 文件。然后它说文件格式不支持多个选项卡,我必须单击“确定”。好像这还不够,接下来它会询问我是否真的要保留这种格式的工作簿……最后,单击了六次之后,我得到了 txt 文件,但现在我必须关闭它,因为我不想编辑 txt 文件,因为我会在 .xlsx 文件中丢失这些编辑。好吧,当我关闭 Excel 时,它会再次询问我是否要保存我的 .txt 文件!
现在,五年来,我几乎每天工作时都会看到这些警告,对此我感到厌烦。我得找一个更好的系统。我觉得宏也许会有所帮助。
我想宏将我的 .xlsx 文件的当前选项卡保存为选项卡有限的 .txt 文件,保存到 .xlsx 文件所在的文件夹中.我希望它使用当前选项卡的名称作为文件名并覆盖任何先前同名的文件。我希望只需单击一下即可完成此操作。
答案1
我会做什么:
- 以 Excel 格式保存您的数据。
- 使用 xlsx、RODBC 或其他可以处理 Excel 的包将其读入 R。
- 做你的分析。
如果您对 Excel 宏一无所知,这会比尝试学习 VBA 容易得多。
我还要补充一点:这样做意味着您不必担心格式问题。如果您以文本格式保存工作表,它将保留可能已应用的任何格式,例如数字中的逗号或美元符号。这会使 R 出错read.delim
,它会假设任何非数字字符都意味着变量应被视为一个因子。
答案2
如何将数据导入 R,以便您可以更好地控制如何保存到文件?
- 在 Excel 中:Ctrl-A、Ctrl-C(选择当前工作表中的所有内容,复制到剪贴板)
- 在 R 中: x <- read.delim(“clipboard”)
虽然不完全是一次点击,但仍然非常简单。