要找到数字数据框列的极值,可以借助min和max函数来完成,但是如果我们希望在单行代码中获得相同的值,则可以使用range函数。如果列中有一些无穷大值,range.default则将使用函数,如以下示例所示。
考虑以下数据帧-
set.seed(214) x1<−sample(c(1,5,Inf,10),20,replace=TRUE) x2<−rpois(20,5) df1<−data.frame(x1,x2) df1输出结果
x1 x2 1 Inf 0 2 10 5 3 1 3 4 10 7 5 10 3 6 5 5 7 1 4 8 Inf 2 9 10 3 10 Inf 9 11 1 4 12 Inf 3 13 5 3 14 5 5 15 1 6 16 Inf 1 17 10 6 18 Inf 3 19 10 4 20 10 8
找到列x1的极值-
range.default(df1$x1,finite=TRUE)输出结果
[1] 1 10
y1<−rnorm(20,5,2.3) y2<−sample(c(Inf,rnorm(5,2)),20,replace=TRUE) df2<−data.frame(y1,y2) df2输出结果
y1 y2 1 5.711206 2.367679 2 3.891755 2.367679 3 8.345217 1.529547 4 4.316907 1.888925 5 5.945366 Inf 6 8.204934 1.888925 7 9.634025 Inf 8 5.096354 Inf 9 8.186749 2.367679 10 6.808151 Inf 11 6.310553 2.586410 12 5.207341 2.586410 13 4.190045 1.888925 14 6.570371 Inf 15 1.553658 2.367679 16 5.869204 2.367679 17 7.211524 2.586410 18 7.517553 1.888925 19 7.224195 3.003426 20 4.105865 1.888925
找到列x1的极值-
range.default(df2$y2,finite=TRUE)输出结果
[1] 1.529547 3.003426