【发布时间】:2012-03-28 07:19:07
【问题描述】:
我希望将 CSV 中的一些 0000-2400 小时格式的字符串转换为 00-24 小时格式。例如
2011-01-01,"AA",12478,31703,12892,32575,"0906",-4.00,"1209",-26.00,2475.00
2011-01-02,"AA",12478,31703,12892,32575,"0908",-2.00,"1236",1.00,2475.00
2011-01-03,"AA",12478,31703,12892,32575,"0907",-3.00,"1239",4.00,2475.00
第 7 列和第 9 列分别是出发和到达时间。当我完成后,这些线条最好看起来像这样:
2011-01-01,"AA",12478,31703,12892,32575,"09",-4.00,"12",-26.00,2475.00
整个 csv 最终将被导入到 R 中,我想尝试预先处理一些处理,因为它会有点大。我最初尝试使用 Perl 来执行此操作,但我无法使用正则表达式选择多个数字。我可以使用后向表达式在给定逗号前获得一个数字,但不能超过一个。
我也愿意被告知在 Perl 中这样做是不必要的愚蠢,我应该坚持使用 R。:)
【问题讨论】:
-
我会考虑使用专门用于处理 csv 的模块,例如 Text::CSV。