基因组生物学最近发表结果显示,Excel 的自动日期格式化程序导致大约 20% 的补充基因列表发表论文出现错误。
例如,SEPT2(Septin 2)和 MARCH1 [膜相关环指(C3HC4)1,E3 泛素蛋白连接酶] 等基因符号默认分别转换为“2-Sep”和“1-Mar”。此外,RIKEN 标识符被描述为自动转换为浮点数(即从接入号“2310009E13”到“2.31E+13”)
他们提供 bash 脚本根据转换为日期的基因名称来识别错误。
我的问题是:是否有通用的方法来编写这样的脚本来解析我的所有 Excel 文件并检测异常格式的数据?脚本可以撤消这些更改吗?在这两种情况下,此脚本应该寻找什么?
答案1
假设我们要从某个外部文件将数据导入 Excel。有三个问题:
- 防止将应为文本的字段转换为日期
- 对于已导入的数据,检测错误转换为日期的单元格
- 对于已经导入的数据,纠正坏单元
前两个步骤很简单。代码的细节取决于数据的模式(需要处理哪些 Excel 列)。
第三个需要构建一个翻译表,用于将日期转换回文本。
翻译表并不像看起来那么糟糕(表中只能有 365 个条目)。