@@ -14,6 +14,8 @@ ee[["logical___factor"]] =
14
14
function (value , type , levels ) { factor (value , levels = union(levels , value ), ordered = FALSE ) }
15
15
ee [[" logical___ordered" ]] =
16
16
function (value , type , levels ) { if (all(value %in% c(NA_character_ , levels ))) factor (value , levels = levels , ordered = TRUE ) else NULL }
17
+ ee [[" logical___POSIXct" ]] =
18
+ function (value , type , levels ) { if (allMissing(value )) .POSIXct(value , tz = " " ) else value }
17
19
18
20
# # from: integer
19
21
ee [[" integer___logical" ]] =
@@ -26,6 +28,8 @@ ee[["integer___factor"]] =
26
28
ee [[" logical___factor" ]]
27
29
ee [[" integer___ordered" ]] =
28
30
ee [[" logical___ordered" ]]
31
+ ee [[" integer___POSIXct" ]] =
32
+ ee [[" logical___POSIXct" ]]
29
33
30
34
# # from: numeric
31
35
ee [[" numeric___logical" ]] =
@@ -38,6 +42,8 @@ ee[["numeric___factor"]] =
38
42
ee [[" logical___factor" ]]
39
43
ee [[" numeric___ordered" ]] =
40
44
ee [[" logical___ordered" ]]
45
+ ee [[" numeric___POSIXct" ]] =
46
+ ee [[" logical___POSIXct" ]]
41
47
42
48
# # from: character
43
49
ee [[" character___logical" ]] =
@@ -50,6 +56,8 @@ ee[["character___factor"]] =
50
56
ee [[" logical___factor" ]]
51
57
ee [[" character___ordered" ]] =
52
58
ee [[" logical___ordered" ]]
59
+ ee [[" character___POSIXct" ]] =
60
+ function (value , type , levels ) { x = try(as.POSIXct(value ), silent = TRUE ); if (inherits(x , " try-error" )) value else x }
53
61
54
62
# # from: factor
55
63
ee [[" factor___logical" ]] =
@@ -60,6 +68,8 @@ ee[["factor___factor"]] =
60
68
function (value , type , levels ) { factor (value , levels = union(levels , levels(value )), ordered = FALSE ) }
61
69
ee [[" factor___ordered" ]] =
62
70
function (value , type , levels ) { if (all(levels(value ) %in% levels )) factor (value , levels = levels , ordered = TRUE ) else NULL }
71
+ ee [[" factor___POSIXct" ]] =
72
+ ee [[" character___POSIXct" ]]
63
73
64
74
# # from: ordered
65
75
ee [[" ordered___character" ]] =
@@ -68,6 +78,8 @@ ee[["ordered___factor"]] =
68
78
ee [[" factor___factor" ]]
69
79
ee [[" ordered___ordered" ]] =
70
80
ee [[" ordered___ordered" ]]
81
+ ee [[" ordered___POSIXct" ]] =
82
+ ee [[" character___POSIXct" ]]
71
83
72
84
rm(ee )
73
85
# nolint end
0 commit comments