как мне вернуть несколько строк с одинаковым минимальным или максимальным значением в R ?? (сейчас он выбирает только один) - PullRequest
1 голос
/ 13 июля 2020

Может ли кто-нибудь помочь мне вернуть более одной строки с одинаковым минимальным значением.

У меня есть набор данных со столбцами:

ID   TEST_TYPE  TEST_NUMBER

, и мне нужно вернуть максимальный тест номер и минимальный номер теста для каждого идентификатора. Проблема в том, что существует множество различных тестов, и один идентификатор может иметь типы тестов a и b, которые выполняются один раз. Когда я пытаюсь получить минимальное значение для идентификатора, я получаю только тест a.

Я хочу получить дублированные строки с тем же идентификатором, который соответствует минимальному TEST_NUMBER, с другим TEST_TYPE

для return:

ID    TEST_TYPE   TEST_NUMBER
876      a             1
876      b             1

В настоящее время я использую следующий код, но он дает мне только одно совпадение для каждого идентификатора, а не все совпадения с повторяющимся идентификатором:

Q_TEST <- Q_TEST %>% group_by(ID) %>% slice(which.min(TEST_NUMBER))

пожалуйста, помогите

1 Ответ

1 голос
/ 14 июля 2020

А как насчет

Q_TEST <- Q_TEST %>%
    group_by(ID) %>%
    filter(TEST_NUMBER == min(TEST_NUMBER))

Условие фильтрации равенства будет выполняться для всех минимальных значений в каждой группе.

...