我有一个数据框,如下所示:
# A tibble: 24 × 4
hour day variable object
<dbl> <int> <dbl> <dbl>
1 9 5 NA 0
2 10 5 0.415 1
3 11 5 0.264 0
4 12 5 0.175 0
5 13 5 -0.486 0
6 14 5 0.0106 0
7 15 5 0.103 0
8 16 5 0.0907 0
9 9 8 -0.00771 0
10 10 8 0.224 1
几天的每小时数据。
在“对象”列中,我们可以看到它包含 1 - 然后在它旁边的“变量”列中,它包含 0.415。
我想计算如果
object
列中有 1 的概率 - variable
列变为 0 的概率是多少。在这里,我们看到它跨越了第 4/5 行的 0 标记 - 或 12:00 / 13:00 小时。问题:我想按每一天进行分组(其中 day
列中包含 1),然后计算当天达到 0 的概率。 - 每一天都与前一天无关。
数据:object
df = structure(list(hour = c(9, 10, 11, 12, 13, 14, 15, 16, 9, 10,
11, 12, 13, 14, 15, 16, 9, 10, 11, 12, 13, 14, 15, 16), day = c(5L,
5L, 5L, 5L, 5L, 5L, 5L, 5L, 8L, 8L, 8L, 8L, 8L, 8L, 8L, 8L, 18L,
18L, 18L, 18L, 18L, 18L, 18L, 18L), variable = c(NA, 0.414792991161418,
0.26444813342084, 0.175192037425655, -0.48622054810318, 0.0106216565921986,
0.103308777384061, 0.0906635802469188, -0.00770906007284361,
0.223579978027479, -0.242312352160617, 0.136872746901092, -0.025026952102285,
-0.0105909764880226, -0.112661409134247, 0.0539842288931472,
0.116060958971156, 0.440959335967113, -0.100319831542143, -0.416596239696943,
-0.23363086323609, -0.132100396301194, 0.104216770883445, -0.00600624649636213
), object = c(0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
0, 1, 0, 0, 0, 0, 0, 0)), row.names = c(NA, -24L), class = c("tbl_df",
"tbl", "data.frame"))