如何在 r 中进行反向编码(附示例)
在进行调查时,研究人员有时会用“消极”的方式重新表述“积极”的问题,以确保个人给出一致的回答。
我们说这类问题是反向编码的。
当使用调查为个人分配综合分数时,确保反向编码问题也获得反向分数非常重要。
以下示例展示了如何在 R 中反转反向编码问题的分数。
示例:R 中的反向编码
假设研究人员对 10 个人进行了一项包含 5 个问题的调查,其中每个问题的可能答案是:
- 完全同意
- 接受
- 既不同意也不反对
- 不同意
- 强烈反对
以下数据库包含调查结果,其中“强烈同意”分配值为 5,“同意”分配值为 4,依此类推:
#create data frame that contains survey results df <- data. frame (Q1=c(5, 4, 4, 5, 4, 3, 2, 1, 2, 1), Q2=c(1, 2, 2, 1, 2, 3, 4, 5, 4, 5), Q3=c(4, 4, 4, 5, 4, 3, 2, 4, 3, 1), Q4=c(3, 4, 2, 2, 1, 2, 5, 4, 3, 2), Q5=c(2, 2, 3, 2, 3, 1, 4, 5, 3, 4)) #view data frame df Q1 Q2 Q3 Q4 Q5 1 5 1 4 3 2 2 4 2 4 4 2 3 4 2 4 2 3 4 5 1 5 2 2 5 4 2 4 1 3 6 3 3 3 2 1 7 2 4 2 5 4 8 1 5 4 4 5 9 2 4 3 3 3 10 1 5 1 2 4
假设问题 2 和问题 5 是反向编码的,因此我们需要反转它们的分数。
也就是说:
- 1 应该变成 5。
- 2应该变成4。
- 3应该变成3。
- 4 应该变成 2。
- 5 应该变成 1。
最简单的方法是取最大可能分数 (5),加 1 得到 6。然后用 6 减去原始分数,得到反转的分数值。
例如:
- 5 变为: 6 – 5 = 1 。
- 4 变为: 6 – 4 = 2 。
- 3 变为: 6 – 3 = 3 。
- 2 变为: 6 – 2 = 4 。
- 1 变为: 6 – 1 = 5 。
我们可以在 R 中使用以下代码来执行此操作:
#define columns to reverse code reverse_cols = c(" Q2 ", " Q5 ") #reverse code Q2 and Q5 columns df[, reverse_cols] = 6 - df[, reverse_cols] #view updated data frame df Q1 Q2 Q3 Q4 Q5 1 5 5 4 3 4 2 4 4 4 4 4 3 4 4 4 2 3 4 5 5 5 2 4 5 4 4 4 1 3 6 3 3 3 2 5 7 2 2 2 5 2 8 1 1 4 4 1 9 2 2 3 3 3 10 1 1 1 2 2
请注意,Q2 和 Q5 列中的所有值都已进行反向编码。
其他资源
以下教程解释了如何在 R 中执行其他常见任务: