Как получить значение фильтрации по столбцам? - PullRequest
1 голос
/ 15 февраля 2020

У меня есть следующая таблица данных в R:

threshold   ranking    size
0.70        11         100
0.65        9          102
0.60        12         150
0.55        10         110

Мне нужно получить значение ranking для строки, когда threshold равно 0,60.

threshold_val <- 0.60
out <- as.numeric(filter(df, round(df["threshold"],2) == round(threshold_val,2))["ranking"])

Но out равно NA вместо 12.

Что не так в моем коде?

Спасибо.

1 Ответ

1 голос
/ 16 февраля 2020

Существуют функции с одинаковыми именами в разных пакетах. Если эти пакеты загружены, один из них будет маскировать другую функцию, и поведение может быть совершенно другим. Одним из вариантов является указание packageName:: перед функцией

dplyr::filter(df, round(df[["threshold"]],2) == 
       round(threshold_val,2))[["ranking"]]

Кроме того, когда мы задаем столбец, лучше использовать [[ вместо [, так как это может привести к некоторым ошибкам

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...