根据列计算击中零的概率

问题描述 投票:0回答:1

我有一个数据框,如下所示:

# 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


r tidyverse
1个回答
0
投票

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"))

© www.soinside.com 2019 - 2024. All rights reserved.