R:for循环中Date类的双重性质

时间:2018-07-10 07:05:25

标签: r date for-loop

有人可以解释为什么我在下面的for循环中获得不同的日期类吗?

dt_all <- Sys.Date() + 1:2

for(dt in dt_all){
  print(dt)
  cat("This is of",class(dt),"class\n")
}
# [1] 17723
# This is of numeric class
# [1] 17724
# This is of numeric class

for(i in 1:length(dt_all)){
  dt <- dt_all[i]
  print(dt)
  cat("This is of",class(dt),"class\n")
}

# [1] "2018-07-11"
# This is of Date class
# [1] "2018-07-12"
# This is of Date class

谢谢。

1 个答案:

答案 0 :(得分:0)

可能是因为您无法遍历日期类对象,所以r将它们转换为数字。