Вы можете использовать функции pmax() и pmin() в R, чтобы найти параллельные максимальные и минимальные значения, соответственно, для нескольких векторов.
Эти функции используют следующий базовый синтаксис:
pmax(vector1, vector2, vector3, ...)
pmin(vector1, vector2, vector3, ...)
В следующих примерах показано, как использовать эти функции как с векторами, так и с фреймами данных.
Пример 1: Используйте pmax и pmin с векторами
Предположим, у нас есть следующие три вектора в R:
#define three vectors
vector1 <- c(2, 2, 3, 4, 5, 6, 9)
vector2 <- c(1, 2, 4, 3, 3, 5, 4)
vector3 <- c(0, 4, 3, 12, 5, 8, 8)
Мы можем использовать функции pmax и pmin , чтобы найти максимальное и минимальное значения соответствующих элементов во всех трех векторах:
#find max value across vectors
pmax(vector1, vector2, vector3)
[1] 2 4 4 12 5 8 9
#find min value across vectors
pmin(vector1, vector2, vector3)
[1] 0 2 3 3 3 5 4
Вот как интерпретировать вывод:
- Максимальное значение в первой позиции по всем векторам равно 2.Минимальное значение в первой позиции по всем векторам равно 0 .
- Максимальное значение во второй позиции по всем векторам равно 4.Минимальное значение во второй позиции по всем векторам равно 2 .
И так далее.
Пример 2. Используйте pmax и pmin со столбцами фрейма данных
Предположим, у нас есть следующий фрейм данных в R:
#create data frame
df <- data.frame(team=c('A', 'B', 'C', 'D', 'E'),
steals=c(24, 22, 36, 33, 30),
assists=c(33, 28, 31, 39, 34),
rebounds=c(30, 28, 24, 24, 41))
#view data frame
df
team steals assists rebounds
1 A 24 33 30
2 B 22 28 28
3 C 36 31 24
4 D 33 39 24
5 E 30 34 41
Мы можем использовать функции pmax и pmin , чтобы найти максимальное и минимальное значения соответствующих элементов во всех трех векторах:
#find max value across steals, assists, and rebounds columns
pmax(df$steals, df$assists, df$rebounds)
[1] 33 28 36 39 41
#find minimum value across steals, assists, and rebounds columns
pmin(df$steals, df$assists, df$rebounds)
[1] 24 22 24 24 30
Вот как интерпретировать вывод:
- Максимальное значение в первой строке столбцов перехватов, передач и подборов было 33 , а минимальное значение — 24 .
- Максимальное значение во второй строке столбцов перехватов, передач и подборов было 28 , а минимальное значение — 22 .
И так далее.
Примечание.Если у вас есть пропущенные значения в каком-либо из векторов, просто используйте следующий синтаксис, чтобы игнорировать NA при расчете максимума или минимума:
pmax(vector1, vector2, vector3, na. rm = TRUE )
pmin(vector1, vector2, vector3, na. rm = TRUE )
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции в R:
Как использовать функцию length() в R
Как использовать функцию cat() в R
Как использовать функцию substring() в R