【发布时间】:2021-11-29 22:59:22
【问题描述】:
TLDR:如何设置 Rstudio 以将 CSV 导入为与 Microsoft Excel 完全相同的 tibble(Rstudio for mac 版本:版本 1.3.959,Excel for mac:版本 16.33,如果有帮助的话)?如果这是不可能的,或者它的行为应该已经相同,我该如何设置它以读取不超过 8 列的 CSV 文件并在行中填写空白值以便我可以整理它?
长版:
我有十几个 CSV 文件(从档案动物标签收集)很乱(宽度不一致,一个文件上有多个数据块),需要读入。出于工作流程的原因,我想获取原始数据并将其直接带入 R。文件之间的数据具有一致的结构:一个元数据块、一个 6 列宽的按天汇总,以及 2 个 2 列宽的常量日志记录块。如果您要计算每个部分中的空白单元格,它将是:
| Section | Width | Length |
|---|---|---|
| Metadata | 8 | 37 |
| Summary Block | 7 | N days |
| Block 1 | 2 | N*72 |
| Block 2 | 2 | N*72 |
最后三个数据块可能有数千个条目。除了单个 1x500,000+ 数据帧之外,我无法将此数据加载到 R 中。使用 tag1 = read_csv('file', skip = 37) 从我想要崩溃 R 的数据开始。它适用于 read.csv(),但这会删除我想保留的元数据块。
尝试将文件读入 Excel 会显示正确的格式(宽度、长度等),但不会加载所有数据。它切断了最后一个数据块的很大一部分。以像 read_xl() 这样的表格格式读取数据会出现同样的问题。
最终,我喜欢将数据作为包含这些不同部分的嵌套 tibble 导入,或者更好的是,自动执行此过程,以便它可以读取整个文件夹的 csv 文件,自动将它们分配给变量,然后拆分它们分成部分。但是,现在我只想将这些数据完整地转换为可行的格式,如果您能给我提供任何帮助,我将不胜感激。
【问题讨论】: