【发布时间】:2016-12-24 21:27:39
【问题描述】:
我无法在 R 中导入这些数据,因为它不是标准的 csv 格式。我的原始数据如下所示:
BC000068032198109TMAX 232 Q 220 Q 220 Q 244 Q 239 Q 246 Q 270 Q 300 Q 327 Q 279 Q 256 Q 260 Q 289 Q 342 Q 357 Q 359 Q 370 Q 373 Q 367 Q 370 Q 372 Q 357 Q 366 Q 365 Q 355 Q 355 Q 364 Q 343 Q 364 Q 362 Q-9999
BC000068032198110TMIN 180 Q 170 I 150 I 130 I 150 I 130 I 160 I 190 I 190 I 185 Q-9999 130 I 130 I 160 I 170 I 140 I 160 I 160 I 160 I 160 I 160 I-9999 190 I 180 I 160 I 165 Q 210 I 180 I-9999 190 I 170 I
所以,基本上每行的前 11 个字符是位置的 ID,接下来的 4 个是年份,接下来的 2 个是月份,然后还有 4 个是变量的名称。最后,有 31 个数字是该特定月份和变量的每日测量值。 -9999 表示不可用。通常,每次测量后都有一个标志(例如“Q”或“I”),但 NA 不是。我对导入这些标志不感兴趣。最终,我希望拥有一个长数据集,其中每个日常测量与其日期、位置和变量名称相结合。感谢您的支持。
【问题讨论】:
-
请修正您的数据格式!
-
这是固定宽度的格式;请参阅
?read.fwf或?readr::read_fwf,它们提供了一些方便的替代方法来输入或获取宽度。