R中的自动更新日期(总是在昨天查询)

Posted

技术标签:

【中文标题】R中的自动更新日期(总是在昨天查询)
【英文标题】:Auto-update Date in R (always query yesterday)R中的自动更新日期(总是在昨天查询)
【发布时间】:2021-12-17 09:49:15
【相关技术】:@tags@
【问题描述】:

我通常在手动更改日期时从本地系统读取这些数据, 例如,今天的日期是 11 月 2 日,就像下面链接中的这种格式 (2021_11_02),所以我要做的是为前一天创建一个报告,即 2021 年 11 月 1 日 (2021_11_01)

我在创建报告之前手动更新此日期

现在我想安排自动运行报告的自动化

如何在 r 中编写代码,自动更新报告中的昨天或脚本中所需的任何地方的日期 -1?

有没有办法 r 可以将日期自动更新为负 1(总是使用昨天的日期)

如何指示 R 在任何有日期的脚本中自动使用一天减去一个日期

请查看本地机器上的示例链接

DWReport_2021_11_01 <-read_csv("C:/Users/Guest 1/Downloads/DWReport_2021-11-01.csv")
DWReport_2021_11_01_1_ <-read_csv("C:/Users/Guest 1/Downloads/DWReport_2021-11-01 (1).csv")
match_report<-rbind(DWReport_2021_11_01,DWReport_2021_11_01_1_)

另外,每当我查询数据库时,我希望始终将日期更改为一天减去前一天的日期 请参阅下面的示例脚本

tbl(connect, "accotdebits")%>%
  filter(dates > "1633046400" & dates < "1633910399" &
           tranx_status == "Successfull")%>%
                  collect()

每天阅读两个问题减去我本地机器上的一个 查询数据库时自动更新日期为减去昨天的日期

【问题讨论】:


【参考方案1】:

您可以使用 Sys.Date() 来获取今天的日期。你可以简单地用负 1 减去一天。

yesterday <- Sys.Date()  - 1
yesterday_formatted <- format( yesterday, "%Y_%m_%d")

然后您可以在代码中使用这些值

temp <- read_csv( paste0("C:/users/guest/downloads/DWReport_", yesterday,".csv")

assign(paste0("DWReport_", yesterday_formatted), temp)

您的最终查询..您在哪里查询数据库...不将日期传递给数据库是不寻常的?这是什么风格的 SQL?这只是一个 Unix 时间戳吗?

如果您将日期转换为 POSIXct,然后转换为数字,您可以获得时间戳。您可能需要手动添加 HH mm...

yesterday_numeric <- as.numeric( as.POSIXct( format (yesterday, "%Y-%m-%d 00:00:00")))
tbl(connect, "accotdebits")%>%
  filter(dates > yesterday_numeric & dates < (yesterday_numeric+(24*60*60)) &
           tranx_status == "Successfull")%>%
                  collect()

【讨论】:

以上是关于R中的自动更新日期(总是在昨天查询)的主要内容,如果未能解决你的问题,请参考以下文章

PPT中如何自动更新日期?

R markdown beamer中的自动日期[重复]

couchdb 日期格式自动更新

当另一个单元格的值发生变化时,一个单元格中的自动日期更新(通过公式计算)

安卓手机怎样更新时间?

如何取消WORD中的自动更新时间