如何将数据框列转换为包含R中整数值的日期?

如果我们有一个实际包含日期值的整数列,例如2020年9月29日为20200929,则可以通过使用转换函数将其转换为日期,方法是使用as.Date函数读取日期,但是还需要as.character,以便as.Date函数可以读取日期值。

例1

请看以下数据帧-

ID<−1:20

Dates<−c(2020010120200401202010152020011120200222202001212020070120201231202004172020060120200811202009272020051220200713202002252020032420200203202008192020091620200428)

df1<−data.frame(ID,Dates)

df1

输出结果

   ID    Dates

1 1 20200101

2 2 20200401

3 3 20201015

4 4 20200111

5 5 20200222

6 6 20200121

7 7 20200701

8 8 20201231

9 9 20200417

10 10 20200601

11 11 20200811

12 12 20200927

13 13 20200512

14 14 20200713

15 15 20200225

16 16 20200324

17 17 20200203

18 18 20200819

19 19 20200916

20 20 20200428

日期转换为适当的日期格式-

df1<−transform(df1,Dates=as.Date(as.character(Dates),"%Y%m%d"))

df1

输出结果

   ID    Dates

1 1 20200101

2 2 20200401

3 3 20201015

4 4 20200111

5 5 20200222

6 6 20200121

7 7 20200701

8 8 20201231

9 9 20200417

10 10 20200601

11 11 20200811

12 12 20200927

13 13 20200512

14 14 20200713

15 15 20200225

16 16 20200324

17 17 20200203

18 18 20200819

19 19 20200916

20 20 20200428

例2

S.NO<−1:20

Date<−c(1998031319980604199804091998010419980501199801011998052119980412199806011998071119980615199808101998050919980221199811011998112119981009199809151998092919980813)

df2<−data.frame(S.NO,Date)

df2

输出结果

   S.NO    Date

1 1 19980313

2 2 19980604

3 3 19980409

4 4 19980104

5 5 19980501

6 6 19980101

7 7 19980521

8 8 19980412

9 9 19980601

10 10 19980711

11 11 19980615

12 12 19980810

13 13 19980509

14 14 19980221

15 15 19981101

16 16 19981121

17 17 19981009

18 18 19980915

19 19 19980929

20 20 19980813

将日期转换为适当的日期格式-

df2<−transform(df2,Date=as.Date(as.character(Date),"%Y%m%d"))

df2

输出结果

   S.NO    Date

1 1 19980313

2 2 19980604

3 3 19980409

4 4 19980104

5 5 19980501

6 6 19980101

7 7 19980521

8 8 19980412

9 9 19980601

10 10 19980711

11 11 19980615

12 12 19980810

13 13 19980509

14 14 19980221

15 15 19981101

16 16 19981121

17 17 19981009

18 18 19980915

19 19 19980929

20 20 19980813

以上是 如何将数据框列转换为包含R中整数值的日期? 的全部内容, 来源链接: utcz.com/z/355003.html

回到顶部