View source: R/daily2monthly.R
(sub)daily2monthly | R Documentation |
Generic function for transforming a DAILY (sub-daily or weekly) regular time series into a MONTHLY one
daily2monthly(x, ...)
subdaily2monthly(x, ...)
## Default S3 method:
daily2monthly(x, FUN, na.rm=TRUE, na.rm.max=0, ...)
## S3 method for class 'zoo'
daily2monthly(x, FUN, na.rm=TRUE, na.rm.max=0, ...)
## S3 method for class 'data.frame'
daily2monthly(x, FUN, na.rm=TRUE, na.rm.max=0, dates=1,
date.fmt = "%Y-%m-%d", out.type = "data.frame", out.fmt="numeric",
verbose=TRUE, ...)
## S3 method for class 'matrix'
daily2monthly(x, FUN, na.rm=TRUE, na.rm.max=0, dates=1,
date.fmt = "%Y-%m-%d", out.type = "data.frame", out.fmt="numeric",
verbose=TRUE, ...)
x |
zoo, data.frame or matrix object, with (sub)daily time series. |
FUN |
Function that have to be applied for transforming from daily to monthly time step (e.g., for precipitation
|
na.rm |
Logical. Should missing values be removed? |
na.rm.max |
Numeric in [0, 1]. It is used to define the maximum percentage of missing values allowed in each month to keep the monthly aggregated value in the output object of this function. In other words, if the percentage of missing values in a given month is larger or equal than |
dates |
numeric, factor or Date object indicating how to obtain the dates for each gauging station |
date.fmt |
character indicating the format in which the dates are stored in dates, e.g. %Y-%m-%d. See |
out.type |
Character that defines the desired type of output. Valid values are: |
out.fmt |
OPTIONAL. Only used when |
verbose |
logical; if TRUE, progress messages are printed |
... |
arguments additional to |
a zoo object with monthly time frequency
Mauricio Zambrano-Bigiarini, mzb.devel@gmail
cmv
, subhourly2hourly
, daily2annual
, subdaily2daily
, monthlyfunction
, hydroplot
, vector2zoo
, izoo2rzoo
, as.Date
######################
## Ex1: Computation of monthly values, removing any missing value in 'x'
# Loading the DAILY precipitation data at SanMartino
data(SanMartinoPPts)
x <- SanMartinoPPts
# Subsetting 'x' to its first three months (Jan/1921 - Mar/1921)
x <- window(x, end="1921-03-31")
## Transforming into NA the 10% of values in 'x'
set.seed(10) # for reproducible results
n <- length(x)
n.nas <- round(0.1*n, 0)
na.index <- sample(1:n, n.nas)
x[na.index] <- NA
## Agreggating from Daily to Monthly, removing any missing value in 'x'
m <- daily2monthly(x, FUN=sum, na.rm=TRUE)
######################
## Ex2: Computation of monthly values only when the percentage of NAs in each
# month is lower than a user-defined percentage (10% in this example).
# Loading the DAILY precipitation data at SanMartino
data(SanMartinoPPts)
x <- SanMartinoPPts
# Subsetting 'x' to its first three months (Jan/1921 - Mar/1921)
x <- window(x, end="1921-03-31")
## Transforming into NA the 10% of values in 'x'
set.seed(10) # for reproducible results
n <- length(x)
n.nas <- round(0.1*n, 0)
na.index <- sample(1:n, n.nas)
x[na.index] <- NA
## Daily to monthly, only for months with less than 10% of missing values
m2 <- daily2monthly(x, FUN=sum, na.rm=TRUE, na.rm.max=0.1)
# Verifying that the second and third month of 'x' had 10% or more of missing values
cmv(x, tscale="month")
######################
## Ex3: Loading the HOURLY streamflows for the station Karamea at Gorge
data(KarameaAtGorgeQts)
x <- KarameaAtGorgeQts
# Sub-daily to monthly ts
subdaily2monthly(x, FUN=mean, na.rm=TRUE)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.