代码之家  ›  专栏  ›  技术社区  ›  vxs8122

与is.unsorted()函数混淆

  •  0
  • vxs8122  · 技术社区  · 6 年前

    data[,is.unsorted(POSIXct, na.rm=T)]
    data[,which(diff(POSIXct)<0)]
    

    这就是我得到的结果

    > data[,is.unsorted(POSIXct, na.rm=T)]
    [1] TRUE
    > data[,which(diff(POSIXct)<0)]
    integer(0)
    

    1 回复  |  直到 6 年前
        1
  •  3
  •   MrFlick    6 年前

    x <- c(1, NA, 0)
    is.unsorted(x, na.rm=TRUE)
    # TRUE
    which(diff(x)<0)
    # integer(0)
    

    这个 diff

    diff(x)
    # [1] NA NA
    

    所以没有两两的值小于0,因为它们与NA(和 which 仅删除NA值)。