将数据字符串转换为"数据" R中的对象

时间:2015-06-22 19:17:09

标签: r date csv

我的问题是as.Date函数不会将数据框的date列中的值转换为Date objects

我有data.frame nmmaps。这是它的一部分。

city     date death temp dewpoint     pm10       o3 time season

1 chic 1/1/1987   130 31.5   31.500 27.79119 4.025928    1 winter

2 chic 1/2/1987   150 33.0   29.875       NA 4.579652    2 winter

3 chic 1/3/1987   101 33.0   27.375 33.67382 3.400928    3 winter

4 chic 1/4/1987   135 29.0   28.625 40.79119 3.942595    4 winter

5 chic 1/5/1987   126 32.0   28.875       NA 4.400928    5 winter

6 chic 1/6/1987   130 40.0   35.125 41.79119 5.984261    6 winter

我使用以下命令从Excel文件导入数据:

nmmaps <- read.csv("chicago-nmmaps.csv" , as.is = T)

当我通过as.Date达到转换点时,我进入 nmmaps$date <- as.Date(nmmaps$date)并获得data.frame,如下所示。

  city       date death temp dewpoint     pm10       o3 time season

1 chic 0001-01-19   130 31.5   31.500 27.79119 4.025928    1 winter

2 chic 0001-02-19   150 33.0   29.875       NA 4.579652    2 winter

3 chic 0001-03-19   101 33.0   27.375 33.67382 3.400928    3 winter

4 chic 0001-04-19   135 29.0   28.625 40.79119 3.942595    4 winter

5 chic 0001-05-19   126 32.0   28.875       NA 4.400928    5 winter

6 chic 0001-06-19   130 40.0   35.125 41.79119 5.984261    6 winter

为什么这样显示日期?此外,某些日期有NA字段。我想将这些年展示为1987年,1988年,1989年等。

1 个答案:

答案 0 :(得分:3)

如果您通过输入?as.Date在R帮助页面上阅读as.Date,您将看到如果您未指定,则会假定存在默认格式。因此,要为您的数据指定

      nmmaps$date <- as.Date(nmmaps$date, format="%m/%d/%Y")