Привет и спасибо за чтение.
Я пытался агрегировать некоторые данные, и HAVE успешно смог сделать это с помощью функции агрегирования, но я также хотел попробовать сделать то же самое, запустив конвейер с помощью dplyr - однако я продолжаю получатьошибка:
Ошибка в mutate_impl (.data, dots): Ошибка оценки: не удалось найти функцию "15.2".
В настоящее время у меня есть этот набор данных p:
sample gene ct
1 s001 gapdh 15.2
2 s001 gapdh 16
3 s001 gapdh 14.8
4 s002 gapdh 16.2
5 s002 gapdh 17
6 s002 gapdh 16.7
7 s003 gapdh Undetermined
8 s003 gapdh 14.6
9 s003 gapdh 15
10 s001 actb 24.5
11 s001 actb 24.2
12 s001 actb 24.7
13 s002 actb 25
14 s002 actb 25.7
15 s002 actb 25.5
16 s003 actb 27.3
17 s003 actb 27.4
18 s003 actb Undetermined
и хотите, чтобы оно получило:
p2$sample p2$gene p2$ct.mean p2$ct.sd
1 s001 actb 24.46666667 0.25166115
2 s002 actb 25.40000000 0.36055513
3 s003 actb 27.35000000 0.07071068
4 s001 gapdh 15.33333333 0.61101009
5 s002 gapdh 16.63333333 0.40414519
6 s003 gapdh 14.80000000 0.28284271
Код, который я сейчас использую, приводит к указанной выше ошибке:
library(dplyr)
p_ave_sd <- p %>%
filter(p$ct != "Undetermined") %>%
mutate_at(as.character(p$ct), as.numeric, rm.na = TRUE) %>%
group_by(p$gene) %>%
summarise(mean=mean(p$ct), sd=sd(p$ct))
Этоопределенно это был шаг "mutate", который сбил меня с толку, и я пробовал mutate_all (), mutate_if (is.factor, is.numeric) и тому подобное, но у каждого есть своя ошибка.
Спасибо за помощь!