gpt4 book ai didi

r - 如何按类别制作频率表

转载 作者:行者123 更新时间:2023-12-02 00:43:04 24 4
gpt4 key购买 nike

这是我到目前为止设置的代码:

library(dslabs)
library(dplyr)
library(lubridate)

data("reported_heights")

dat <- mutate(reported_heights, date_time = ymd_hms(time_stamp)) %>%
filter(date_time >= make_date(2016, 01, 25) & date_time < make_date(2016, 02, 1)) %>%
mutate(type = ifelse(day(date_time) == 25 & hour(date_time) == 8 & between(minute(date_time), 15, 30), "inclass","online")) %>%
select(sex, type, time_stamp)

y <- factor(dat$sex, c("Female", "Male"))
x <- dat$type

counter <- count(dat, sex,type)

它为我创建了一个看起来像这样的 tbl_df,链接如下:

      sex | type    | n 
1 Female | inclass | 26
2 Male | inclass | 13
3 Female | online | 42
4 Male | online | 69

我问你是否可以帮我编写一个代码来计算每种类型的类(class)中每种性别的比例。

我一直在尝试使用 x 字符“inclass”和“online”作为列并添加比例列来创建一个新表,然后 y 因子“male”和“female”将作为行。我一直在尝试使用 pull() 来做到这一点和prop.table()但我是一个完全的新手,如果你们美丽的专家能帮助我,这对我来说意味着世界。我已经研究了几个小时的答案,也许答案已经存在,所以请原谅我似乎找不到它......非常感谢。

每种类型的类(class)(类和在线)中性别(男性和女性)的比例是多少?

可以通过将性别除以给定类型类(class)的学生总数来计算。

For example: There are 42 females studying online out of the total (42+69)=111. Answer: In the online class 38% are females.

我们如何在 R 中做到这一点?

最佳答案

使用prop.table():

prop.table(table(y, x), 2)
# x
#y inclass online
# Female 0.6666667 0.3783784
# Male 0.3333333 0.6216216

关于r - 如何按类别制作频率表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58151063/

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