【发布时间】:2021-11-05 00:47:00
【问题描述】:
我用 6 个问题 [Q1:Q6,有 2 个表达式]、4 个不同的组织单位 [Org_unit,1:4] 和另一个试图找出问题的调查来表示我正在处理的一项调查。 , 对应公司的人是否为经理[经理,1:2],其中[1]代表经理,[2]代表员工。
小标题如下所示: 注意:[-9] 是无响应,因此我将它们分配给 NA。
library(dplyr)
Org_unit <- c(1,1,1,1,2,2,2,3,3,4)
Manager <- c(1,1,2,2,1,1,1,1,2,2)
Q1 <- c(1,2,1,2,1,2,1,2,1,2)
Q2 <- c(1,-9,-9,-9,-9,-9,-9,-9,-9,-9) #Note one response
Q3 <- c(1,1,2,-9,-9,2,1,1, -9, 1)
Q4 <- c(1,1,-9,1,2,2,-9,1,-9,2)
Q5 <- c(1,-9,-9,-9,-9,-9,-9,-9,-9,-9)
Q6 <- c(1,-9,-9,-9,-9,-9,-9,-9,-9,-9)
df <- tibble(Org_unit, Manager, Q1, Q2, Q3, Q4, Q5, Q6)
df[df == -9] <- NA
df
# A tibble: 10 x 8
Org_unit Manager Q1 Q2 Q3 Q4 Q5 Q6
<dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 1 1 1 1 1 1 1 1
2 1 1 2 NA 1 1 NA NA
3 1 2 1 NA 2 NA NA NA
4 1 2 2 NA NA 1 NA NA
5 2 1 1 NA NA 2 NA NA
6 2 1 2 NA 2 2 NA NA
7 2 1 1 NA 1 NA NA NA
8 3 1 2 NA 1 1 NA NA
9 3 2 1 NA NA NA NA NA
10 4 2 2 NA 1 2 NA NA
目的是找出有多少员工(条件 #1,经理必须是 [2])回答了 [1] 的问题。基本上是员工的数量,他们在各自的 org_unit 中用 [1] 回答了特定问题。
示例:org_unit 1 共有 4 个成员。在这 4 人中,只有 2 人符合员工标准(经理 == 2)。 org_unit 1 中的 2 名员工中有 1 人用 [1] 回答了 Q1,换句话说,org_unit 1 中 50% 的员工用 [1] 回答了 Q1。
prop <-df %>%
group_by(Org_unit) %>%
filter(Manager == 2) %>%
summarise(N = n(),
across(c(Q1, Q2, Q3, Q4, Q5, Q6), ~mean(. == 1)))
prop
# A tibble: 3 x 8
Org_unit N Q1 Q2 Q3 Q4 Q5 Q6
<dbl> <int> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 1 2 0.5 NA NA NA NA NA
2 3 1 1 NA NA NA NA NA
3 4 1 0 NA 1 0 NA NA
如我们所见,Q1 在 Org_unit 1 中有一个 prop 为 0,5 和总共 N = 2 个成员。所以这似乎可行。
问题是,回答不到所有问题 50% 的个人不应被算作各自小组的成员。让我们再看看 tibble。
# A tibble: 10 x 8
Org_unit Manager Q1 Q2 Q3 Q4 Q5 Q6
<dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 1 1 1 1 1 1 1 1
2 1 1 2 NA 1 1 NA NA
3 1 2 1 NA 2 NA NA NA
4 1 2 2 NA NA 1 NA NA
5 2 1 1 NA NA 2 NA NA
6 2 1 2 NA 2 2 NA NA
7 2 1 1 NA 1 NA NA NA
8 3 1 2 NA 1 1 NA NA
9 3 2 1 NA NA NA NA NA
10 4 2 2 NA 1 2 NA NA
个人 3,尽管它符合员工标准(经理 == 2)并且至少有一个问题回答为(Q1 == 1),但 Q2 和 Q4:Q6 是不适用的,因此超过 50%所有的问题都没有回答。
我需要调整道具代码以减少所有未响应的 N 的数量(在这种情况下,org_unit 1 应该减少 2,因为个人 3 和 4,尽管它们符合某些标准,但有 4/ 6 个无响应。同样重要的是,org_unit 1 仍会继续显示在数据框中,而是将 N 列为 NA,并且应根据特定组中适当的成员数量调整比例。
有没有办法解决这个问题?提前致谢!
编辑:阈值应为
结果应该是这样的:
prop
# A tibble: 3 x 8
Org_unit N Q1 Q2 Q3 Q4 Q5 Q6
<dbl> <int> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 1 NA NA NA NA NA NA NA
2 2 NA NA NA NA NA NA NA
3 3 NA NA NA NA NA NA NA
4 4 1 0 NA 1 0 NA NA
【问题讨论】:
-
你能更清楚结果应该是什么样子吗?阈值是
< .5还是<= .5?理想情况下,发布您想要的表格作为结果
标签: r proportions