Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/116.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
tidyr::收集can';我找不到我的值变量_R_Tidyr - Fatal编程技术网

tidyr::收集can';我找不到我的值变量

tidyr::收集can';我找不到我的值变量,r,tidyr,R,Tidyr,我有一个非常大的data.frame。我复制了其中的一部分 RECORDING_SESSION_LABEL condition TRIAL_INDEX IA_LABEL IA_DWELL_TIME 1 23 match 1 eyes 3580 2 23 match 1 nose 241

我有一个非常大的data.frame。我复制了其中的一部分

     RECORDING_SESSION_LABEL condition TRIAL_INDEX IA_LABEL IA_DWELL_TIME
1                         23     match           1     eyes          3580
2                         23     match           1     nose          2410
3                         23     match           1    mouth          1442
4                         23     match           1     face           841
5                         23  mismatch           3     eyes          1817
6                         23  mismatch           3     nose          1724
7                         23  mismatch           3    mouth          1600
8                         23  mismatch           3     face          1136
9                         23  mismatch           4     eyes          4812
10                        23  mismatch           4     nose          3710
11                        23  mismatch           4    mouth          4684
12                        23  mismatch           4     face          1557
13                        23  mismatch           6     eyes          4645
14                        23  mismatch           6     nose          2321
15                        23  mismatch           6    mouth           674
16                        23  mismatch           6     face           684
17                        23     match           7     eyes          1062
18                        23     match           7     nose          1359
19                        23     match           7    mouth           215
20                        23     match           7     face             0
我需要计算每个试验索引中每个IA_标签的IA_停留时间百分比。为此,我首先将IA_标签放在不同的列中

data_IA_DWELL_TIME <- tidyr::spread(data_IA_DWELL_TIME, key = IA_LABEL, value = IA_DWELL_TIME) 

data\u IA\u dwill\u TIME如前所述,您在
collect
语句中没有引用数据帧

但是,您可以避免完全引用它,将第二部分放在
dplyr
管道中,如下所示:

library(dplyr)
library(tidyr)

data_IA_DWELL_TIME <- spread(data_IA_DWELL_TIME, key = IA_LABEL, value = IA_DWELL_TIME) 

data_IA_DWELL_TIME %>%
  mutate_at(
    vars(eyes, nose, mouth, face),
    ~ 100 * (. / (rowSums(data_IA_DWELL_TIME[, c("eyes", "nose", "mouth", "face")])))
  ) %>%
  gather(key = IA_LABEL, value = IA_DWELL_TIME,-RECORDING_SESSION_LABEL,-condition, -TRIAL_INDEX)
库(dplyr)
图书馆(tidyr)
数据保存时间%
突变(
内翻(眼睛、鼻子、嘴、脸),
~100*(./(行和(数据驻留时间[,c(“眼睛”、“鼻子”、“嘴”、“脸”))))
) %>%
聚集(键=IA\U标签,值=IA\U停留时间,-录制会话\U标签,-条件,-试验索引)

您需要参考您的
df
,例如
数据\u IA\u停留时间\u百分比多么愚蠢的错误!非常感谢arg0naut91没问题,我们都在这里学习-请参阅下文,了解您的管道可能的改进。非常感谢arg0naut91。非常有用的建议!
data_IA_DWELL_TIME_percentage <- tidyr::gather(key = IA_LABEL, value = IA_DWELL_TIME,-RECORDING_SESSION_LABEL,-condition, -TRIAL_INDEX)
library(dplyr)
library(tidyr)

data_IA_DWELL_TIME <- spread(data_IA_DWELL_TIME, key = IA_LABEL, value = IA_DWELL_TIME) 

data_IA_DWELL_TIME %>%
  mutate_at(
    vars(eyes, nose, mouth, face),
    ~ 100 * (. / (rowSums(data_IA_DWELL_TIME[, c("eyes", "nose", "mouth", "face")])))
  ) %>%
  gather(key = IA_LABEL, value = IA_DWELL_TIME,-RECORDING_SESSION_LABEL,-condition, -TRIAL_INDEX)