【问题标题】:How do I convert the my current Date into an integer value in R? [duplicate]如何将我当前的日期转换为 R 中的整数值? [复制]
【发布时间】:2021-10-09 22:05:58
【问题描述】:

这是我的数据:

## # A tibble: 1,096 x 2
##    Date            rider_count
##    <chr>                 <dbl>
##  1 Fri 1 Apr 2016         8755
##  2 Fri 1 Dec 2017        14252
##  3 Fri 1 Jan 2016         1299
##  4 Fri 1 Jul 2016         8993
##  5 Fri 1 Jun 2018        12967
##  6 Fri 1 Sep 2017        10871
##  7 Fri 10 Aug 2018       12580
##  8 Fri 10 Feb 2017       14562
##  9 Fri 10 Jun 2016        6450
## 10 Fri 10 Mar 2017        7361
## # ... with 1,086 more rows

我想将“Fri 1 Jan 2016”等日期转换为“20160101”。我该怎么做呢?谢谢!!

【问题讨论】:

标签: r date


【解决方案1】:

在转换为integer之前,我们需要先转换为Date类,然后再转换为format

as.integer(format(as.Date(df1$Date, format = '%a %d %b %Y'), '%Y%m%d'))

缩写可以在strptime的文档中查看help('strptime')?strptime

%a - 此平台上当前语言环境中的工作日缩写名称。

%d - 一个月中的哪一天

%b - 缩写月份名称

%Y - 带世纪的年份

【讨论】:

  • 如此详尽的解释,喜欢它:)
  • 它以数字格式返回所有日期,但是我如何放置它并替换数据中的原始日期。所以我想在我的数据中将转换后的格式替换回日期?
  • @JesseLingLing 只做df1$Date &lt;- as.integer(format(as.Date(df1$Date, format = '%a %d %b %Y'), '%Y%m%d'))
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-07
  • 1970-01-01
  • 2019-04-22
  • 1970-01-01
相关资源
最近更新 更多