如何在r中查找多列中的最大值
我们可以使用pmax()函数来查找 R 的多列中的最大值。该函数使用以下语法:
pmax(…, na.rm = FALSE)
金子:
- … :向量列表
- na.rm:一个逻辑元素,指示是否应该删除缺失值。默认值为 false。
本教程提供了如何使用以下数据框在实践中使用此函数的几个示例:
#create data frame df <- data.frame(player=c('A', 'B', 'C', 'D', 'E', 'F', 'G'), points=c(28, 17, 19, 14, 23, 26, 5), rebounds=c(5, 6, 4, 7, 14, 12, 9), assists=c(10, 13, 7, 8, 4, 5, 8)) #view DataFrame df player points rebound assists 1 to 28 5 10 2 B 17 6 13 3 C 19 4 7 4 D 14 7 8 5 E 23 14 4 6 F 26 12 5 7 G 5 9 8
示例 1:查找特定列中的最大值
以下代码显示如何查找数据框中的点和反弹列中的最大值:
#find max values in each row across points and rebounds columns pmax (df$points, df$rebounds) [1] 28 17 19 14 23 26 9
示例 2:添加包含最大值的新列
以下代码显示如何向数据框中添加新列,其中包含点数和篮板数列中的最大值:
#add new column that contains max values across points and rebounds columns df$max_points_rebs <- pmax (df$points, df$rebounds) #view data frame df player points rebounds assists max_points_rebs 1 A 28 5 10 28 2 B 17 6 13 17 3 C 19 4 7 19 4 D 14 7 8 14 5 E 23 14 4 23 6 F 26 12 5 26 7 G 5 9 8 9
示例 3:添加多个包含最大值的新列
以下代码展示了如何向包含不同列组中的最大值的数据框添加多个新列:
#add new column that contains max values across points and rebounds columns df$max_p_r <- pmax (df$points, df$rebounds) #add new column that contains max values across rebounds and assists columns df$max_r_a <- pmax (df$rebounds, df$assists) #view data frame df player points rebounds assists max_p_r max_r_a 1 A 28 5 10 28 10 2 B 17 6 13 17 13 3 C 19 4 7 19 7 4 D 14 7 8 14 8 5 E 23 14 4 23 14 6 F 26 12 5 26 12 7 G 5 9 8 9 9