确定创建NA的日期

时间:2019-07-01 18:25:17

标签: r

为什么返回NA?我想使用factor对日期进行排序以进行绘制。

 factor(today(), levels = today())
[1] <NA>
Levels: 2019-07-01

1 个答案:

答案 0 :(得分:2)

“ levels”参数需要字符数据。但是,日期数据具有基础的数字表示形式。因此指定:

factor(today(), levels = today())

为数据创建无效的标签。这相当于说您希望因子的水平包括数字18,708。

为“级别”参数明确指定字符数据会产生预期的结果:

factor(today(), levels = as.character(today()))
[1] 2019-07-01
Levels: 2019-07-01

日期数据是数字,因此具有固有的顺序。但是,如果您想将它们首先转换为因式,请确保指定ordered = TRUE参数。