R 为什么过滤器(as.Date(opp_Date)=Sys.Date())带来了昨天';谁的数据?

R 为什么过滤器(as.Date(opp_Date)=Sys.Date())带来了昨天';谁的数据?,r,filter,dplyr,posixct,as.date,R,Filter,Dplyr,Posixct,As.date,我喜欢使用dplyr;我什么都用它。但是,我今天试验的问题如下: 我试图简单地从我的opps表中筛选所有行,其中opp_日期是从今天开始的。因此,当我使用filter(opps,as.Date(opp_Date)==Sys.Date())时,从19:00开始,它会带来今天的数据,也会带来昨天的数据 要澄清任何可能的问题: opp_日期字段为POSIXctclass Sys.Date() 你知道吗?感谢社区提供的大量信息:)由于重复率低,无法添加评论,因此将此作为答案发布 正如我最近了解到的,

我喜欢使用dplyr;我什么都用它。但是,我今天试验的问题如下:

我试图简单地从我的opps表中筛选所有行,其中opp_日期是从今天开始的。因此,当我使用
filter(opps,as.Date(opp_Date)==Sys.Date())
时,从19:00开始,它会带来今天的数据,也会带来昨天的数据

要澄清任何可能的问题:

  • opp_日期字段为
    POSIXct
    class
  • Sys.Date()

你知道吗?感谢社区提供的大量信息:)

由于重复率低,无法添加评论,因此将此作为答案发布

正如我最近了解到的,R日期是一个格式噩梦,尤其是通过基函数。结帐
lubridate
包装。您可能希望使用
dmy\u hms
功能转换日期列。这很简单,默认情况下支持向量。尝试一下,如果问题仍然存在,请告诉我


请务必提供样本数据。否则人们就无法重现你的问题

正如我最近了解到的,
as.Date.POSIXct
的默认时区不好。您可能想检查它的文档。这很有趣,因为如果我导出并导入带有数据的CSV,我将使用与.Date()相同的
函数,并且它可以工作!!检查用于计算操作日期的时区是否与系统使用的时区相同。如果opp_日期记录在UTC-10中,这将说明您的五小时偏移量Ithink@Mako212感谢您的回复,但实际上,
Sys.Date()
opp_Date
都是“GMT-5”。正如我在过去的评论中所写的,当我导出然后导入日期(作为CSV)时,
dplyr
在显示今天的行时非常有效。