gpt4 book ai didi

r - 将日期列映射到 R 中从 1 开始的唯一序列号

转载 作者:行者123 更新时间:2023-12-01 13:27:48 25 4
gpt4 key购买 nike

我在数据框中有一列日期,其中每个日期通常重复几次。这是我的数据框的一个示例,它在其他列中还包含一些运动队的名称:

dput(mydf)
structure(list(date_game = structure(c(15643, 15643, 15643, 15644,
15644, 15644, 15646, 15646), class = "Date"), team_id = c("WAS",
"CLE", "LAL", "SAC", "CHI", "DET", "BOS", "MIL"), fran_id = c("Wizards",
"Cavaliers", "Lakers", "Kings", "Bulls", "Pistons", "Celtics",
"Bucks")), .Names = c("date_game", "team_id", "fran_id"), row.names = c(1L,
2L, 3L, 7L, 8L, 9L, 29L, 30L), class = "data.frame")

在这种情况下,mydf 有 3 个唯一日期,并且也会跳过一个日期。我的完整数据框有数百个唯一日期。对于这个例子,我有兴趣向数据框添加一个新列(称之为 date_number),它看起来像这样:
mydf
date_game team_id fran_id date_number
1 2012-10-30 WAS Wizards 1
2 2012-10-30 CLE Cavaliers 1
3 2012-10-30 LAL Lakers 1
7 2012-10-31 SAC Kings 2
8 2012-10-31 CHI Bulls 2
9 2012-10-31 DET Pistons 2
29 2012-11-02 BOS Celtics 3
30 2012-11-02 MIL Bucks 3

就像标题所说的那样 - 从 date_number 列中的 1 开始,我想增加日期的连续数字。关键部分是该列是连续的,即使缺少某些日期也是如此。尽管 11-01 不存在,但 11-02 仍然设置为 3,而不是 4。

任何关于如何做到这一点的想法将不胜感激!

最佳答案

您可以使用

mydf$date_number = as.integer(as.factor(mydf$date_game))

关于r - 将日期列映射到 R 中从 1 开始的唯一序列号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47582358/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com