首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用唯一的id号命名每个日期

使用唯一的id号命名每个日期
EN

Stack Overflow用户
提问于 2021-02-05 21:22:12
回答 3查看 26关注 0票数 0

我有这个数据集

代码语言:javascript
复制
date1<-c(rep(c("2020-06-01"),times=20))
date2<-c(rep(c("2020-06-02"),times=15))
date3<-c(rep(c("2020-06-03"),times=5))
date4<-c(rep(c("2020-06-04"),times=10))
date5<-c(rep(c("2020-06-05"),times=2))
date<-c(date1,date2,date3,date4,date5)

我想制作一个数据框,它将每个日期读取为1,1,1,2,2,2,3,3,4,4……

更好的输出结果是

代码语言:javascript
复制
    date     number of dates
1  2020-06-01       1
2  2020-06-01       1
3  2020-06-01       1     
4  2020-06-01       1
5  2020-06-01       1
6  2020-06-01       1
7  2020-06-01       1
8  2020-06-01       1
9  2020-06-01       1 
10 2020-06-01       1
11 2020-06-01       1
12 2020-06-01       1
13 2020-06-01       1
14 2020-06-01       1
15 2020-06-01       1
16 2020-06-01       1
17 2020-06-01       1
18 2020-06-01       1
19 2020-06-01       1
20 2020-06-01       1
21 2020-06-02       2
22 2020-06-02       2
23 2020-06-02       2
24 2020-06-02       2
25 2020-06-02       2
26 2020-06-02       2
27 2020-06-02       2
28 2020-06-02       2
29 2020-06-02       2
30 2020-06-02       2
31 2020-06-02       2
32 2020-06-02       2
33 2020-06-02       2
34 2020-06-02       2
35 2020-06-02       2
36 2020-06-03       3
37 2020-06-03       3
38 2020-06-03       3
39 2020-06-03       3
40 2020-06-03       3
41 2020-06-04       4
42 2020-06-04       4
43 2020-06-04       4
44 2020-06-04       4
45 2020-06-04       4
46 2020-06-04       4   
47 2020-06-04       4
48 2020-06-04       4
49 2020-06-04       4
50 2020-06-04       4
51 2020-06-05       5
52 2020-06-05       5
EN

回答 3

Stack Overflow用户

发布于 2021-02-05 21:28:38

将日期转换为系数,然后将其转换为数字,以获得系数代码:

代码语言:javascript
复制
data.frame(date, day_no = as.numeric(factor(date)))
票数 0
EN

Stack Overflow用户

发布于 2021-02-05 21:32:18

使用match()

代码语言:javascript
复制
data.frame(date = date, number_of_date = match(date, unique(date)))
票数 0
EN

Stack Overflow用户

发布于 2021-02-05 21:32:59

我是这样解决的:

代码语言:javascript
复制
date1<-c(rep(c("2020-06-01"),times=20))
date2<-c(rep(c("2020-06-02"),times=15))
date3<-c(rep(c("2020-06-03"),times=5))
date4<-c(rep(c("2020-06-04"),times=10))
date5<-c(rep(c("2020-06-05"),times=2))
date<-c(date1,date2,date3,date4,date5)

df <- data.frame(date=date)    
df2 <- data.frame(date=unique(date), number=c(1:length(unique(date))))
df <- merge(df, df2)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66064031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档