1

我有许多数据集,格式如下:

Station number: 505
Location:       Sundarijal                                                        Latitude: 27 46 30
River:          Bagmati River                                                     Longitude: 85 25 40

Year:           1963

                                Mean daily discharge in m3/s
                                ============================

Day     Jan.   Feb.   Mar.   Apr.   May    Jun.   Jul.   Aug.   Sep.   Oct.   Nov.   Dec.   
 01    0.250  0.190  0.100  0.100  0.310  0.160  0.900   4.90   4.86   1.50  0.710  0.400
 02    0.250  0.160  0.130  0.130  0.250  0.160  0.900   4.78   5.01   1.68  0.710  0.400
 03    0.250  0.160  0.220  0.130  0.220  0.600  0.700   4.90   6.00   1.77  0.775  0.400
 04    0.250  0.160  0.190  0.160  0.190  0.160  0.650   4.30   7.05   2.35  0.775  0.400
 05    0.220  0.160  0.160  0.160  0.190  0.160  0.550   4.06   4.04   1.59  0.710  0.400
 06    0.220  0.160  0.160  0.190  0.190  0.160  0.700   3.34   3.64   1.41  0.645  0.400
 07    0.220  0.160  0.280  0.190  0.190  0.190   1.18   3.22   3.23   1.32  0.645  0.355
 08    0.220  0.160  0.190  0.190  0.310  0.130  0.800   4.54   3.12   1.23  0.580  0.355
 09    0.220  0.130  0.190  0.190  0.280  0.160   1.11   5.74   2.79   1.17  0.580  0.355
 10    0.220  0.130  0.160  0.190  0.250  0.190   1.18   5.46   2.68   1.17  0.580  0.355
 11    0.220  0.130  0.160  0.220  0.190  0.160   1.46   4.66   2.57   1.10  0.535  0.355
 12    0.220  0.130  0.160  0.220  0.190  0.160   2.05   4.30   2.24   1.10  0.535  0.355
 13    0.220  0.130  0.130  0.220  0.160  0.130   1.32   3.58   2.57   1.04  0.535  0.355
 14    0.220  0.130  0.130  0.250  0.160  0.130   1.11   2.86   2.24   1.04  0.535  0.355
 15    0.220  0.130  0.130  0.220  0.160   2.32  0.900   6.16   1.95   1.04  0.535  0.355
 16    0.250  0.130  0.130  0.250  0.130  0.340   1.87   3.58   2.35   1.04  0.490  0.310
 17    0.220  0.130  0.130  0.220  0.130  0.340  0.970   4.42   1.95  0.970  0.490  0.310
 18    0.220  0.100  0.100  0.160  0.100  0.280   2.62   5.60   1.77  0.970  0.490  0.310
 19    0.220  0.100  0.100  0.160  0.100  0.650   1.39   4.30   1.68  0.905  0.490  0.310
 20    0.220  0.100  0.100  0.160  0.090  0.550   1.69   4.30   1.59  0.905  0.490  0.310
 21    0.220  0.100  0.100  0.130  0.090  0.700   2.14   4.06   1.50  0.905  0.490  0.310
 22    0.220  0.100  0.190  0.160  0.080  0.400   2.41   6.30   1.41  0.840  0.490  0.310
 23    0.220  0.100  0.190  0.160  0.090  0.340   1.87   4.78   1.41  0.840  0.445  0.310
 24    0.220  0.100  0.130  0.190  0.080  0.280   2.23   5.04   1.23  0.840  0.445  0.310
 25    0.280  0.100  0.100  0.220  0.080  0.280   2.62   4.30   1.23  0.840  0.445  0.310
 26    0.190  0.100  0.100  0.250  0.130  0.250   4.54   4.06   1.86  0.840  0.445  0.310
 27    0.190  0.100  0.100  0.220  0.100  0.800   2.50   9.50   1.59  0.775  0.445  0.310
 28    0.190  0.100  0.100  0.190  0.550  0.850   3.94   4.42   1.68  0.710  0.445  0.310
 29    0.190         0.100  0.280  0.160  0.800   7.02   3.94   2.35  0.710  0.445  0.310
 30    0.190         0.100  0.220  0.100  0.900   5.46   4.18   1.95  0.710  0.400  0.310
 31    0.190         0.100         0.220          4.54   10.0         0.710         0.310

我正在尝试将所有列附加在一起,以形成全年的一列。但是,当我尝试使用以下方法阅读此内容时:

temp <- read.table(files[i], skip = 10, fill = TRUE, nrows = 31)
temp <- temp[,2:13]

空白字段只是在每一行的末尾而不是在所需的列中结束。例如,在第 29 天,2 月获得了 3 月的值,3 月获得了 4 月的值,以此类推,直到 12 月获得 NA。基本上,在阅读此表时,无论如何要区分较大的差距和较小的差距吗?

4

1 回答 1

4

这看起来像一个固定宽度的格式化文件。试试这个例如:

  read.fwf(files[i],skip=10,widths=rep(c(6,-1),13))
于 2013-08-02T09:55:06.217 回答