[R] find number of consecutive days in NC files by R

Martin Maechler m@ech|er @end|ng |rom @t@t@m@th@ethz@ch
Fri Sep 4 09:19:11 CEST 2020


>>>>> Jeff Newmiller 
>>>>>     on Thu, 06 Aug 2020 10:49:50 -0700 writes:

    > You need to make a small fake dataset that illustrates
    > what you have and what you want out of it. Telling us you
    > are not getting what you want is simply not useful.  

Indeed.

In addition:  Do *not* use  suppressWarnings( . ) lightly !

Warnings are there for a good reason, and you should think hard
and may be ask for help before "blindly" using
suppressWarnings().

Whoever told you to do that routinely
has not been a good teacher of R ..

Best regards,

Martin Maechler
ETH Zurich  and  R Core team

    > On August 6, 2020 8:58:09 AM PDT, "ahmet varlı"
    > <varli61 using windowslive.com> wrote:
    >> Hi all,
    >> 
    >> 
    >> There are 365 days of soil moisture NC files and I am
    >> trying to find out how many days the values are below and
    >> above this certain threshold are repeated by R. However,
    >> I couldn't reach exactly what I wanted. For example,
    >> Daily soil moisture is below 0.3 without interrupting how
    >> many days in 365 days. NC file contains annual soil
    >> moisture values daily
    >> 
    >> nctoarray <- function(ncfname, varid = NA) { nc <-
    >> nc_open(ncfname)
    >> 
    >> a <- aperm(ncvar_get(nc), c(2,1,3)) nc_close(nc) a }
    >> 
    >> 
    >> 
    >> function(x, threshold = 0.28, below = TRUE) {
    >> 
    >> if (below) {
    >> 
    >> y <- ifelse(x < threshold,1,0)
    >> 
    >> } else y <- ifelse(x > threshold,1,0)
    >> 
    >> 
    >> 
    >> y2 <- rle(y)
    >> 
    >> sel <- which(y2$values == 1)
    >> 
    >> max(y2$lengths[sel])
    >> 
    >> }
    >> 
    >> 
    >> 
    >> m1 <- suppressWarnings(apply(a,c(1,2), consechours, 0.3,
    >> TRUE))
    >> 
    >> 
    >> 
    >> m2 <- suppressWarnings(apply(a,c(1,2), consechours, 0.4,
    >> FALSE))
    >> 
    >> 
    >> 
    >> 
    >> [[alternative HTML version deleted]]
    >> 
    >> ______________________________________________
    >> R-help using r-project.org mailing list -- To UNSUBSCRIBE and
    >> more, see https://stat.ethz.ch/mailman/listinfo/r-help
    >> PLEASE do read the posting guide
    >> http://www.R-project.org/posting-guide.html and provide
    >> commented, minimal, self-contained, reproducible code.

    > -- 
    > Sent from my phone. Please excuse my brevity.

    > ______________________________________________
    > R-help using r-project.org mailing list -- To UNSUBSCRIBE and
    > more, see https://stat.ethz.ch/mailman/listinfo/r-help
    > PLEASE do read the posting guide
    > http://www.R-project.org/posting-guide.html and provide
    > commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list