#サンプルデータ作成
v.date <- c(20160101,20160102,20160103)
df.test <- data.frame(date = v.date)
df.test
> df.test date 1 20160101 2 20160102 3 20160103
このまま日付に変換すると
> df.test$date <- as.Date(df.test$date, "%Y%m%d") #文字に変換後、日付に変換 Error in charToDate(x) : 文字列は標準的な曖昧さのない書式にはなっていません
となりエラーとなる。理由は、数字ではas.Dateできないため。
そこで、まず、①文字に変換して②日付に変換する。
#①文字に変換
df.test$date <- as.character(df.test$date) #数字ではas.Dateできないため文字に変換
#②日付に変換
df.test$date <- as.Date(df.test$date, "%Y%m%d") #文字に変換後、日付に変換
> df.test date 1 2016-01-01 2 2016-01-02 3 2016-01-03
となり日付に変換できます。