Предпосылки Я работаю с большим набором данных из клинического испытания с повторными измерениями в R, где я хочу сделать некоторые манипуляции с данными для каждого субъекта.Это может быть извлечение максимального значения в столбце x для каждого субъекта или среднего значения столбца y для каждого субъекта.
Проблема
Мне нравится использовать пакет и каналы dplyr, что привело меня к функции group_by.Но когда я пытаюсь применить его, данные, которые я хочу извлечь, похоже, не группируются по темам, как это должно быть, а извлекают данные на основе всего набора данных.
Код
Это то, что я сделал до сих пор:
data <- read.csv(file="group_by_question.csv", header=TRUE, sep=",")
library(dplyr)
library(plyr)
data <- tbl_df(data)
test <- data %>%
filter(!is.na(wght)) %>%
dplyr::group_by(subject_id) %>%
mutate(maxwght=max(wght),meanwght=mean(wght)) %>%
ungroup()
Образец тестового фрейма данных:
Найдите .csv образец моего набора данных здесь: https://drive.google.com/file/d/1wGkSQyJXqSswThiNsqC26qaP7d3catyX/view?usp=sharing