[R] Find tibble row with maximum recorded value
Rich Shepard
r@hep@rd @end|ng |rom @pp|-eco@y@@com
Sat Dec 4 00:59:01 CET 2021
On Fri, 3 Dec 2021, Bert Gunter wrote:
> Perhaps you meant to point this out, but the cfs[which.max(cfs)] and
> cfs == ... are not the same:
>
>> x <- rep(1:2,3)
>> x
> [1] 1 2 1 2 1 2
>> x[which.max(x)]
> [1] 2
>> x[x==max(x)]
> [1] 2 2 2
>
> So maybe your point is: which does the OP want (in case there are
> repeated maxes)? I suspect the == forms, but ...?
Bert,
When I looked at the results I saw there were many rows with the maximum
(and minimum) values. I thought those represented instrument limits, and
they apparently do. For example, 99.9000 cubic feet per second is reached
multiple times over the past 32 years.
> max(pdx_disc$cfs)
[1] 99900
and
> filter(pdx_disc, cfs == max(cfs))
# A tibble: 74 × 9
site_nbr year mon day hr min tz cfs sampdt
<chr> <int> <int> <int> <dbl> <dbl> <chr> <dbl> <dttm>
1 14211720 1988 11 28 0 0 PST 99900 1988-11-28 00:00:00
2 14211720 1988 11 28 5 0 PST 99900 1988-11-28 05:00:00
3 14211720 1988 11 28 5 10 PST 99900 1988-11-28 05:10:00
4 14211720 1988 11 28 5 20 PST 99900 1988-11-28 05:20:00
5 14211720 1988 11 29 6 20 PST 99900 1988-11-29 06:20:00
6 14211720 1988 11 29 13 0 PST 99900 1988-11-29 13:00:00
7 14211720 1988 11 29 13 10 PST 99900 1988-11-29 13:10:00
8 14211720 1988 11 29 15 20 PST 99900 1988-11-29 15:20:00
9 14211720 1989 1 11 0 0 PST 99900 1989-01-11 00:00:00
10 14211720 1989 1 11 0 10 PST 99900 1989-01-11 00:10:00
# … with 64 more rows
So the gauge was pegged at its top end quite a few times over the years.
Makes me wonder just how much higher really was.
Carpe weekend,
Rich
More information about the R-help
mailing list