gpt4 book ai didi

r - 根据给定类型计算连续值

转载 作者:行者123 更新时间:2023-12-01 11:00:26 25 4
gpt4 key购买 nike

我正在使用 R 分析数据,我需要计算数据框中有多少个连续值属于某个组。该组由“类型”列给出。这是我的数据示例。不会使用日期列,它仅用于对行进行排序。

                    date type
2009-11-12 02:01:02 1
2009-11-12 02:08:27 1
2009-11-12 02:26:44 1
2009-11-12 02:27:12 1
2009-11-12 02:28:14 1
2009-11-12 02:30:04 1
2009-11-12 02:35:19 5
2009-11-12 02:40:11 2
2009-11-12 11:35:04 6
2009-11-12 12:32:06 4
2009-11-12 12:32:24 6
2009-11-12 14:08:00 5
2009-11-12 14:16:00 1
2009-11-12 14:17:33 1

我知道我可以使用 ddply 来汇总数据。但是,我希望通过“类型”列中的更改来分解摘要。应用 ddply 会给我这样的东西:

> df <- data.frame(x=c(1,1,1,1,1,1,5,2,6,4,6,5,1,1))
> ddply(df,c("x"),summarize,count=length(x))
x count
========
1 8
2 1
4 1
5 2
6 2

然而,我真正想要实现的是:

  x    count
========
1 6
5 1
2 1
6 1
4 1
6 1
5 1
1 2

最佳答案

您要查找的函数是rle:

df <- data.frame(x=c(1,1,1,1,1,1,5,2,6,4,6,5,1,1))
> rle(df$x)
Run Length Encoding
lengths: int [1:8] 6 1 1 1 1 1 1 2
values : num [1:8] 1 5 2 6 4 6 5 1

关于r - 根据给定类型计算连续值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11473853/

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