小编Dom*_* Jo的帖子

在 R 中按组变异

我有一个包含以下列的数据:

    Date         CID      FID        rank  
    31/01/17     abc0001  rx180x01    0
    31/01/17     abc0001  rx180x02    0
    31/01/17     abc0001  rx180x03    2
    28/02/17     abc0001  rx180x32    1
    28/02/17     abc0001  rx180x31    0
Run Code Online (Sandbox Code Playgroud)

每个 CID 都有一些映射到它的唯一 FID,并且这些 FID 有一些排名。我需要创建 2 个新列 finalrank 和 finalFID。

最终排名是每个日期的每个 CID 的最大排名。即对于 CID abc0001,在日期 31/01/17 中,finalrank 将为 2。此逻辑将应用于所有唯一的 CID 日期组合。

FinalFID 是日期中 CID 具有特定 finalrank 值的 FID。例如,在日期 31/01/17,对于 CID abc0001,具有最大秩的 FID 为 rx180x03

所以我的结果应该是这样的:

    Date         CID      FID        rank  finalrank finalFID
    31/01/17     abc0001  rx180x01    0    2         rx180x03
    31/01/17     abc0001  rx180x02    0    2         rx180x03
    31/01/17 …
Run Code Online (Sandbox Code Playgroud)

r window-functions dplyr mutate

4
推荐指数
1
解决办法
2万
查看次数

在 R 中生成一个月的最后一天的日期序列

如果我给出开始日期和结束日期以及频率,我应该能够生成从开始到结束的日期序列,这样

1)日期是当月的最后一天。2)我可以将序列的频率设置为 12 的任何因子(wrt 12 个月)。假设频率为 3,则表示间隔或间隔为 4 个月。

对于(1)以下函数给了我一个间隔为 3 个月(即每季度)的输出,但它没有给出当月最后一天的日期。

    DateSeq<-function(st,en, freq){
    seq(st, en, by = paste(as.character(12/freq), "months"))
    }
    DateSeq(as.Date("2015-01-01"),as.Date("2018-03-03"),4)
Run Code Online (Sandbox Code Playgroud)

如何将其转换为给我最后一天的序列。?给个简单的代码。

r date sequence

3
推荐指数
1
解决办法
2972
查看次数

标签 统计

r ×2

date ×1

dplyr ×1

mutate ×1

sequence ×1

window-functions ×1