从CSV文件中读取数字日期值到“R”中的data.frame

时间:2010-04-13 06:31:07

标签: r csv formatting dataframe

> D <- read.csv("sample1.csv", header = FALSE, sep = ",")

> D
        V1     V2     V3     V4
1 20100316 109825 352120 239065
2 20100317 108625 352020 239000
3 20100318 109125 352324 241065

> D[,1]
[1] 20100316 20100317 20100318

在上面的示例中,如何将D[,1]中的数据读取并存储为日期值:2010-03-16,2010-03-17,2010-03-18?我有很多这种格式的数据文件。

TIA,

1 个答案:

答案 0 :(得分:2)

dx = "20100316 20100317 20100318"    
# if your dates already exists as individual items of mode "character"
# then obviously, skip this step 
dx2 = unlist(strsplit(dx, split=" "))

fnx = function(x){as.Date(x, format="%Y%m%d")}

dx3 = fnx(dx2)
dx3
# returns: [1] "2010-03-16" "2010-03-17" "2010-03-18"

class(dx3)
# returns: [1] "Date"