R 计数字符串在列中出现的次数

R 计数字符串在列中出现的次数,r,dataframe,summarize,R,Dataframe,Summarize,你能想出一种直观的方法来计算单词空间在某一列中出现的次数吗?或任何其他可行的解决方案。 我基本上想知道空格键被按下了多少次,但是一些参与者犯了错误,按下了其他键,这也被认为是错误的。所以我想知道是否应该改为使用“key_resp.rt”列,并计算响应时间。如果你有任何想法如何做这两个将是伟大的,因为我可能需要使用这两个 我使用了以下代码,但结果与数据不符 Data %>% group_by(Participant, Session) %>% summarise(false_star

你能想出一种直观的方法来计算单词空间在某一列中出现的次数吗?或任何其他可行的解决方案。 我基本上想知道空格键被按下了多少次,但是一些参与者犯了错误,按下了其他键,这也被认为是错误的。所以我想知道是否应该改为使用“key_resp.rt”列,并计算响应时间。如果你有任何想法如何做这两个将是伟大的,因为我可能需要使用这两个

我使用了以下代码,但结果与数据不符

 Data %>% group_by(Participant, Session) %>% summarise(false_start = sum(str_count(key_resp.keys, "space")))
以下是我的数据片段:

    Participant    RT     Session   key_resp.keys           key_resp.rt
       X        0.431265    1       ["space"]            [2.3173399999941466]
       X        0.217685    1           
       X        0.317435    2       ["space","space"] [0.6671900000001187,2.032510000000002]    2020.1.3    4
       Y        0.252515    1       
       Y        0.05127     2   ["space","space","space","space","space","space","space","space","space"]   [4.917419999999765,6.151149999999689,6.333714999999771,6.638249999999971,6.833514999999338,7.0362499999992,7.217724999999504,7.38576999999988,7.66913999999997]
预期产出:

Participant  Session  false_start
   x             1       0
   x             2       1
   y             1       2
   y             2       1
   z             1       10
   z             2       3

我们可以使用
stru count
来计算每个
参与者
会话
总和
空间
值,以获得总数。对于
all\u false\u start
我们计算其中的字数

library(dplyr)
library(stringr)

df %>%
  group_by(Participant, Session) %>%
  summarise(false_start = sum(str_count(key_resp.keys, '\\bspace\\b')), 
            all_false_start = sum(str_count(key_resp.keys, '\\b\\w+\\b')))

嗯,我不知道如何复制这个。key_resp.keys列中没有任何内容(如果未按任何键,[“space”]如果按一次键,或者[“space”、“space”,…]它被按下了多少次。不确定如何重现。按键\u resp.rt遵循相同的逻辑,并以相同的格式显示响应时间。抱歉,我不能提供更多帮助。抱歉,格式很糟糕,不确定如何改进。我只是放了一点,会有会话1和会话2的条目。只是添加了您要求的信息。除了“请重复提问”之外的任何内容都会鼓励提出另一个糟糕的问题。但我想知道他们按空格键的次数。您如何定义“按空格键”?如果我们只按空格键然后是单词空间在每行中出现的次数。如果我们谈论的是所有按键,那么它将是变量key_resp.rtNo中的响应次数,我们谈论的是您想要计算的内容。我对此感到困惑。您共享的示例没有足够的观察值来匹配您的expected输出。您可以删除问题不需要的其他列,并使用预期输出共享更多行的
dput
,以便问题变得清晰。这就是为什么我尝试在“数据片段”中生成一些必要列的示例。这看起来像这样,但每个参与者都有更多行。
library(dplyr)
library(stringr)

df %>%
  group_by(Participant, Session) %>%
  summarise(false_start = sum(str_count(key_resp.keys, '\\bspace\\b')), 
            all_false_start = sum(str_count(key_resp.keys, '\\b\\w+\\b')))