Это, вероятно, очень просто, но для его упрощения не хватает правильного синтаксиса.Поиск индекса минимального значения, превышающего пороговое значение в R
Для получения матрицы найдите запись в одном столбце, которое является самым низким значением, большим, чем некоторый входной параметр. Затем верните запись в другой столбец соответствующей строки. Не очень сложно ... и я нашел что-то, что работает, но более эффективное решение было бы очень благодарно.
Я нашел эту ссылку: Better way to find a minimum value that fits a condition?
который отлично .. но что метод нахождения наименьшей записи теряет индексную информацию, необходимую, чтобы найти соответствующее значение в соответствующей строке.
Скажем, столбец 2 является столбцом условия, а столбец 1 - это тот, который я хочу вернуть .... в настоящее время я сделал это: (обратите внимание, что это работает только потому, что строка вторая полна чисел, которые меньше чем 1).
matrix[which.max((matrix[,2]>threshhold)/matrix[,2]),1]
Любые мысли? Я ожидаю, что есть, вероятно, какая-то быстрая и простая функция, которая имеет этот эффект ... это просто никогда не было представлено мне ха-ха.
Что случилось с однострочником, что решает вашу проблему? Однако этот код выходит из строя, если ваше обрезание отрицательное, и есть отрицательная запись, превышающая обрезание вместе с положительными позициями. –
@JamesPringle Я думаю, что одним из моих основных соображений при поиске «более простого» решения является то, что я скоро передам этот код преемнику. Хотя это решение является кратким, не сразу видно, почему он работает. – jameselmore
Ну, вот для чего нужны комментарии в коде. –