我创建了一个带有Date
类型列的数据框。当使用[[
和数字向量对数据框进行索引时,日期将变成数字。这在使用purrr::pmap
时会导致问题。有人能解释一下为什么会发生这种情况吗?是否有解决方法?
示例:
x <- data.frame(d1 = lubridate::ymd(c("2018-01-01","2018-02-01")))
class(x$d1)
# [1] "Date"
x[[1]]
# [1] "2018-01-01" "2018-02-01"
x[[c(1, 1)]]
# [1] 17532
x[[c(1, 1)]]
而不是x[1, 1]
? - Cristian E. Nunox[[c(1,1)]]
是purrr::pmap
迭代数据框时访问值的方式。这就是我遇到上述问题的地方。 - MrHopkohelp(Extract)
中 - 子集(除非使用空索引)会删除除名称、维度和维度名称之外的所有属性。 请注意,子集与索引不同。在x[[1]]
中,您正在进行索引,在x[[c(1, 1)]]
中,您正在进行子集操作,因此会丢失属性。 - Rich Scriven