【发布时间】:2020-02-01 14:39:26
【问题描述】:
我希望有人可以帮助我解决我在创建函数时遇到的问题。我使用的数据集包含调查回复,每个问题(Q1、Q2 等)都有一列,每一行都有回复。该函数必须能够选择列(Q1、Q2 等),然后从该列中过滤一个特定的响应,以便对其进行计数。
我正在尝试编写一个函数,该函数允许您包含要选择的问题编号作为参数之一。这是代码:
my_function <- function(survey, question_number) {
selected_question <- survey %>%
select(question_number)
everyday_responses <- selected_question %>%
filter(question_number == "Every day") %>%
count()
这适用于选择列,但不适用于在该列中进行过滤。我发现这是因为我必须将 question_number 参数输入为“Q1”(用引号括起来)。这导致 filter(question_number == "Every day") 行无法正常工作,因为这需要没有“”的列名(Q1 不是“Q1”)。
谁能解释为什么会发生这种情况并可能提出修复建议?我对使用 R 很陌生,所以我可能完全错过了一些东西。
在此先感谢 :D
【问题讨论】: