如何根据日期筛选数据?

huangapple go评论142阅读模式
英文:

How can I filter data based on date?

问题

我已经使用R中的“tidyquant”包下载了股票价格数据。该公司的财政年度每年截止于3月31日。因此,我想筛选出所有可用年份的数据,仅保留3月31日的数据。数据可用于2013年1月1日至2023年2月1日。在这些日期中,我只想保留以下日期的数据:

  • 2013年3月31日;
  • 2014年3月31日;
  • 2015年3月31日;
  • 2016年3月31日;
  • 2017年3月31日;
  • 2018年3月31日;
  • 2019年3月31日;
  • 2020年3月31日;
  • 2021年3月31日;
  • 2022年3月31日。

如何应用这样的筛选?

英文:

I have downloaded stock price data using tidyquant package in R. This company's financial year ends on 31st March every year. So, I want to filter data only for 31st March for all the available years. The data is available from 1-Jan-2013 to 1-Feb-2023. Out of them, I want to keep only the datapoints, where the dates are as follows:

  1. 31-Mar-2013;
  2. 31-Mar-2014;
  3. 31-Mar-2015;
  4. 31-Mar-2016;
  5. 31-Mar-2017;
  6. 31-Mar-2018;
  7. 31-Mar-2019;
  8. 31-Mar-2020;
  9. 31-Mar-2021;
  10. 31-Mar-2022

How can I apply such filter?

答案1

得分: 0

  1. library(lubridate)
  2. your_data_frame$DATE_COLUMN <- dmy(your_data_frame$DATE_COLUMN)
  3. dplyr::filter(your_data_frame, month(DATE_COLUMN) == 3, day(DATE_COLUMN == 31))
  4. 考虑到331日有时会落在周末,也许更有意义的是提取3月的最后一天。
  5. your_data_frame %>%
  6. filter(month(DATE_COLUMN) == 3) %>%
  7. group_by(year = year(DATE_COLUMN)) %>%
  8. slice_max(DATE_COLUMN) %>%
  9. ungroup()
英文:
  1. library(lubridate)
  2. your_data_frame$DATE_COLUMN &lt;- dmy(your_data_frame$DATE_COLUMN)
  3. dplyr::filter(your_data_frame, month(DATE_COLUMN) == 3, day(DATE_COLUMN == 31)

Given that March 31 will sometimes fall on a weekend, it might make sense to pull the last day of March instead.

  1. your_data_frame %&gt;%
  2. filter(month(DATE_COLUMN) == 3) %&gt;%
  3. group_by(year = year(DATE_COLUMN)) %&gt;%
  4. slice_max(DATE_COLUMN) %&gt;%
  5. ungroup()

huangapple
  • 本文由 发表于 2023年2月8日 08:29:20
  • 转载请务必保留本文链接:https://go.coder-hub.com/75380327.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定