如何计算这些转换 - 在 R 中

How to count these transitions - in R

给定 table 个值,其中 A = 系统状态,B = 状态长度,C = 状态累积长度:

A     B      C
1   1.16    1.16
0   0.51    1.67
1   1.16    2.84
0   0.26    3.10
1   0.59    3.69
0   0.39    4.08
1   0.78    4.85
0   0.90    5.75
1   0.78    6.53
0   0.26    6.79
1   0.12    6.91
0   0.51    7.42
1   0.26    7.69
0   0.51    8.20
1   0.39    8.59
0   0.51    9.10
1   1.16    10.26
0   1.10    11.36
1   0.59    11.95
0   0.51    12.46

我如何使用 R 来计算每个恒定间隔长度的转换次数(其中 A 给出状态)- 其中间隔是连续的并且可以是任意数字(我在我的图像示例中选择了值 2 )?例如,使用 table 值或包含的图像,我们计算从 0-2 的 2 个转换、从大于 2-4 的 3 个转换、从 >4-6 的 3 个转换等。

这在 R 中很简单。您只需要列 C?cut。考虑:

d <- read.table(text="A     B      C
1   1.16    1.16
0   0.51    1.67
1   1.16    2.84
0   0.26    3.10
1   0.59    3.69
0   0.39    4.08
1   0.78    4.85
0   0.90    5.75
1   0.78    6.53
0   0.26    6.79
1   0.12    6.91
0   0.51    7.42
1   0.26    7.69
0   0.51    8.20
1   0.39    8.59
0   0.51    9.10
1   1.16    10.26
0   1.10    11.36
1   0.59    11.95
0   0.51    12.46", header=TRUE)

fi <- cut(d$C, breaks=seq(from=0, to=14, by=2))
table(fi)
# fi
#   (0,2]   (2,4]   (4,6]   (6,8]  (8,10] (10,12] (12,14] 
#      2       3       3       5       3       3       1