[Met_help] [rt.rap.ucar.edu #94689] History for metplus 3.0 for series_analysis

George McCabe via RT met_help at ucar.edu
Wed Mar 25 09:00:14 MDT 2020


----------------------------------------------------------------
  Initial Request
----------------------------------------------------------------

Hi,

I’m trying to use series_analysis to have some statistics (RMSE, ME, etc.) between two models which output every 3 hours from 2018040100 to 2018041021.
There is an individual file every 3 hours.
Is there any way to define
    FCST_SERIES_ANALYSIS_INPUT_TEMPLATE
    and
    OBS_SERIES_ANALYSIS_INPUT_TEMPLATE
    to cover all the files from 2018040100 to 2018041021?

Thanks,
Shih-Wei


----------------------------------------------------------------
  Complete Ticket History
----------------------------------------------------------------

Subject: metplus 3.0 for series_analysis
From: John Halley Gotway
Time: Mon Mar 23 16:37:51 2020

Hi Shih,

I'm going to assign this support ticket about running the Series-
Analysis
tool using METplus to George McCabe.  He should get back to you soon
on it.

Thanks,
John

On Mon, Mar 23, 2020 at 3:27 PM Wei, Shih Wei via RT
<met_help at ucar.edu>
wrote:

>
> Mon Mar 23 15:27:26 2020: Request 94689 was acted upon.
> Transaction: Ticket created by swei at albany.edu
>        Queue: met_help
>      Subject: metplus 3.0 for series_analysis
>        Owner: Nobody
>   Requestors: swei at albany.edu
>       Status: new
>  Ticket <URL:
https://rt.rap.ucar.edu/rt/Ticket/Display.html?id=94689 >
>
>
> Hi,
>
> I’m trying to use series_analysis to have some statistics (RMSE, ME,
etc.)
> between two models which output every 3 hours from 2018040100 to
2018041021.
> There is an individual file every 3 hours.
> Is there any way to define
>     FCST_SERIES_ANALYSIS_INPUT_TEMPLATE
>     and
>     OBS_SERIES_ANALYSIS_INPUT_TEMPLATE
>     to cover all the files from 2018040100 to 2018041021?
>
> Thanks,
> Shih-Wei
>
>

------------------------------------------------
Subject: metplus 3.0 for series_analysis
From: George McCabe
Time: Mon Mar 23 18:14:01 2020

Hi Shih,

I see you are trying to process all files between April 1, 2018 at 0Z
until
April 10 at 21Z every 3 hours. The short answer is yes, it is
possible, but
it takes some clever template naming. We have discussed enhancements
to the
logic to make this situation easier to format (described at the end of
this
email), but unfortunately it is not currently available in 3.0. If
these
enhancements are something you would benefit from, please let us know
so we
can bump that task up the priority list.

The SeriesAnalysis input templates in METplus accept wildcard
characters (?
for a single character, * for any number of characters) and a list of
files.

If the data directory only contains the files you need to process (no
files
outside the time range you mentioned and only the 3 hourly files),
then you
can use wildcards. For example:

INIT_BEG = 2018040100
FCST_SERIES_ANALYSIS_INPUT_TEMPLATE = data.{init?fmt=%Y%m}*.ext

This would be translated to data.201804*.ext, so it would find data
from
all of the days/hours that match that expression.

If you have data in your directory either outside of the desired time
range
or between the 3 hour interval, then you can use the 'shift' keyword
to
specify each of the times you need in a list. For example:

INIT_BEG = 2018040100
FCST_SERIES_ANALYSIS_INPUT_TEMPLATE =  data.{init?fmt=%Y%m%d%H}.ext,

data.{init?fmt=%Y%m%d%H?shift=3H}.ext,

data.{init?fmt=%Y%m%d%H?shift=6H}.ext,

data.{init?fmt=%Y%m%d%H?shift=9H}.ext,

data.{init?fmt=%Y%m%d%H?shift=12H}.ext

This would only the following files: data.2018040100.ext,
data.2018040103.ext, data.2018040106.ext,  data.2018040109.ext,  and
data.2018040112.ext. This is tedious to type out for your desired time
range without writing a script to generate the list. Fortunately you
can
combine a list, wildcards, and a little creativity to make this a
little
easier. For example:

INIT_BEG = 2018040100
FCST_SERIES_ANALYSIS_INPUT_TEMPLATE =  data.{init?fmt=%Y%m}0*.ext,

data.{init?fmt=%Y%m}100*.ext,

data.{init?fmt=%Y%m}101*.ext,

data.{init?fmt=%Y%m}1021.ext

This would match:
data.{init?fmt=%Y%m}0*.ext => data.2018040*.ext => all files from
April 1-9
(assuming files only exist every 3 hours)
data.{init?fmt=%Y%m}100*.ext => data.201804100*.ext => all files from
April
10 from 0Z - 9Z (assuming only 0, 3, 6, 9 exist)
data.{init?fmt=%Y%m}101*.ext => data.201804101*.ext => all files from
April
10 from 10Z - 19Z (assuming only 12, 15, and 18 exist)
data.{init?fmt=%Y%m}101*.ext => data.2018041021.ext => April 10 21Z

I understand this is not the most elegant or flexible solution, but it
should accomplish what you need. If you would like some help setting
this
up, please send me a directory listing of the data you are using so I
know
what additional undesired files are found.

*Related future work:*
METplus supports notation to define a list of integers with a
beginning,
end, and increment

LEAD_SEQ = begin_end_incr(0,12,3)H
is equivalent to:
LEAD_SEQ = 0H, 3H, 6H, 9H, 12H

However, this functionality is only available for certain variables,
like
LEAD_SEQ to define forecast leads. We have discussed enhancing this
logic
to allow this notation elsewhere in METplus, such as filename
templates. If
this was implemented, you would be able to do something like this:

INIT_BEG = 2018040100
FCST_SERIES_ANALYSIS_INPUT_TEMPLATE =
data.{init?fmt=%Y%m%d%H?shift=*begin_end_incr(0,
237, 3)H*}.ext

Which would expand out to a list containing:

data.{init?fmt=%Y%m%d%H?shift=*0H*}.ext,
data.{init?fmt=%Y%m%d%H?shift=*3H*}.ext,
data.{init?fmt=%Y%m%d%H?shift=*6H*}.ext,
...
data.{init?fmt=%Y%m%d%H?shift=*237H*}.ext

or

data.2018040100.ext,
data.2018040103.ext,
data.2018040106.ext,
...
data.2018041021.ext

I apologize for the lengthy response. Please let me know if anything
is
unclear or if I can help in any other way.

Thanks,
George

On Mon, Mar 23, 2020 at 4:38 PM John Halley Gotway via RT
<met_help at ucar.edu>
wrote:

>
> Mon Mar 23 16:38:25 2020: Request 94689 was acted upon.
> Transaction: Given to mccabe (George McCabe) by johnhg
>        Queue: met_help
>      Subject: metplus 3.0 for series_analysis
>        Owner: mccabe
>   Requestors: swei at albany.edu
>       Status: open
>  Ticket <URL:
https://rt.rap.ucar.edu/rt/Ticket/Display.html?id=94689 >
>
>
> This transaction appears to have no content
>


--
George McCabe - Software Engineer III
National Center for Atmospheric Research
Research Applications Laboratory
303-497-2768
---
My working day may not be your working day. Please do not feel obliged
to
reply to this email outside of your normal working hours.

------------------------------------------------
Subject: Re: [rt.rap.ucar.edu #94689] metplus 3.0 for series_analysis
From: Wei, Shih Wei
Time: Mon Mar 23 20:10:17 2020

Hi George,

Thank you so much.
Your information is so helpful, I’ll give it a try.
I do hope the capability would come out soon.
I think there are some people attempt to get some statistics through
the similar way.

Cheers,
Shih-Wei



> On Mar 23, 2020, at 6:14 PM, George McCabe via RT
<met_help at ucar.edu> wrote:
>
> Hi Shih,
>
> I see you are trying to process all files between April 1, 2018 at
0Z until
> April 10 at 21Z every 3 hours. The short answer is yes, it is
possible, but
> it takes some clever template naming. We have discussed enhancements
to the
> logic to make this situation easier to format (described at the end
of this
> email), but unfortunately it is not currently available in 3.0. If
these
> enhancements are something you would benefit from, please let us
know so we
> can bump that task up the priority list.
>
> The SeriesAnalysis input templates in METplus accept wildcard
characters (?
> for a single character, * for any number of characters) and a list
of files.
>
> If the data directory only contains the files you need to process
(no files
> outside the time range you mentioned and only the 3 hourly files),
then you
> can use wildcards. For example:
>
> INIT_BEG = 2018040100
> FCST_SERIES_ANALYSIS_INPUT_TEMPLATE = data.{init?fmt=%Y%m}*.ext
>
> This would be translated to data.201804*.ext, so it would find data
from
> all of the days/hours that match that expression.
>
> If you have data in your directory either outside of the desired
time range
> or between the 3 hour interval, then you can use the 'shift' keyword
to
> specify each of the times you need in a list. For example:
>
> INIT_BEG = 2018040100
> FCST_SERIES_ANALYSIS_INPUT_TEMPLATE =  data.{init?fmt=%Y%m%d%H}.ext,
>
> data.{init?fmt=%Y%m%d%H?shift=3H}.ext,
>
> data.{init?fmt=%Y%m%d%H?shift=6H}.ext,
>
> data.{init?fmt=%Y%m%d%H?shift=9H}.ext,
>
> data.{init?fmt=%Y%m%d%H?shift=12H}.ext
>
> This would only the following files: data.2018040100.ext,
> data.2018040103.ext, data.2018040106.ext,  data.2018040109.ext,  and
> data.2018040112.ext. This is tedious to type out for your desired
time
> range without writing a script to generate the list. Fortunately you
can
> combine a list, wildcards, and a little creativity to make this a
little
> easier. For example:
>
> INIT_BEG = 2018040100
> FCST_SERIES_ANALYSIS_INPUT_TEMPLATE =  data.{init?fmt=%Y%m}0*.ext,
>
> data.{init?fmt=%Y%m}100*.ext,
>
> data.{init?fmt=%Y%m}101*.ext,
>
> data.{init?fmt=%Y%m}1021.ext
>
> This would match:
> data.{init?fmt=%Y%m}0*.ext => data.2018040*.ext => all files from
April 1-9
> (assuming files only exist every 3 hours)
> data.{init?fmt=%Y%m}100*.ext => data.201804100*.ext => all files
from April
> 10 from 0Z - 9Z (assuming only 0, 3, 6, 9 exist)
> data.{init?fmt=%Y%m}101*.ext => data.201804101*.ext => all files
from April
> 10 from 10Z - 19Z (assuming only 12, 15, and 18 exist)
> data.{init?fmt=%Y%m}101*.ext => data.2018041021.ext => April 10 21Z
>
> I understand this is not the most elegant or flexible solution, but
it
> should accomplish what you need. If you would like some help setting
this
> up, please send me a directory listing of the data you are using so
I know
> what additional undesired files are found.
>
> *Related future work:*
> METplus supports notation to define a list of integers with a
beginning,
> end, and increment
>
> LEAD_SEQ = begin_end_incr(0,12,3)H
> is equivalent to:
> LEAD_SEQ = 0H, 3H, 6H, 9H, 12H
>
> However, this functionality is only available for certain variables,
like
> LEAD_SEQ to define forecast leads. We have discussed enhancing this
logic
> to allow this notation elsewhere in METplus, such as filename
templates. If
> this was implemented, you would be able to do something like this:
>
> INIT_BEG = 2018040100
> FCST_SERIES_ANALYSIS_INPUT_TEMPLATE =
> data.{init?fmt=%Y%m%d%H?shift=*begin_end_incr(0,
> 237, 3)H*}.ext
>
> Which would expand out to a list containing:
>
> data.{init?fmt=%Y%m%d%H?shift=*0H*}.ext,
> data.{init?fmt=%Y%m%d%H?shift=*3H*}.ext,
> data.{init?fmt=%Y%m%d%H?shift=*6H*}.ext,
> ...
> data.{init?fmt=%Y%m%d%H?shift=*237H*}.ext
>
> or
>
> data.2018040100.ext,
> data.2018040103.ext,
> data.2018040106.ext,
> ...
> data.2018041021.ext
>
> I apologize for the lengthy response. Please let me know if anything
is
> unclear or if I can help in any other way.
>
> Thanks,
> George
>
> On Mon, Mar 23, 2020 at 4:38 PM John Halley Gotway via RT
<met_help at ucar.edu>
> wrote:
>
>>
>> Mon Mar 23 16:38:25 2020: Request 94689 was acted upon.
>> Transaction: Given to mccabe (George McCabe) by johnhg
>>       Queue: met_help
>>     Subject: metplus 3.0 for series_analysis
>>       Owner: mccabe
>>  Requestors: swei at albany.edu
>>      Status: open
>> Ticket <URL:
https://rt.rap.ucar.edu/rt/Ticket/Display.html?id=94689 >
>>
>>
>> This transaction appears to have no content
>>
>
>
> --
> George McCabe - Software Engineer III
> National Center for Atmospheric Research
> Research Applications Laboratory
> 303-497-2768
> ---
> My working day may not be your working day. Please do not feel
obliged to
> reply to this email outside of your normal working hours.
>



------------------------------------------------
Subject: metplus 3.0 for series_analysis
From: George McCabe
Time: Wed Mar 25 09:00:05 2020

Hi Shih-Wei,

I created a GitHub issue for adding the functionality I described.

https://github.com/NCAR/METplus/issues/404

I am going to close this ticket, but please create a new one if you
are unable to configure METplus to process the time range you desire
and I will help.

Thanks,
George

On Mon Mar 23 20:10:17 2020, swei at albany.edu wrote:
> Hi George,
>
> Thank you so much.
> Your information is so helpful, I’ll give it a try.
> I do hope the capability would come out soon.
> I think there are some people attempt to get some statistics through
> the similar way.
>
> Cheers,
> Shih-Wei
>
>
>
> > On Mar 23, 2020, at 6:14 PM, George McCabe via RT
<met_help at ucar.edu>
> > wrote:
> >
> > Hi Shih,
> >
> > I see you are trying to process all files between April 1, 2018 at
0Z
> > until
> > April 10 at 21Z every 3 hours. The short answer is yes, it is
> > possible, but
> > it takes some clever template naming. We have discussed
enhancements
> > to the
> > logic to make this situation easier to format (described at the
end
> > of this
> > email), but unfortunately it is not currently available in 3.0. If
> > these
> > enhancements are something you would benefit from, please let us
know
> > so we
> > can bump that task up the priority list.
> >
> > The SeriesAnalysis input templates in METplus accept wildcard
> > characters (?
> > for a single character, * for any number of characters) and a list
of
> > files.
> >
> > If the data directory only contains the files you need to process
(no
> > files
> > outside the time range you mentioned and only the 3 hourly files),
> > then you
> > can use wildcards. For example:
> >
> > INIT_BEG = 2018040100
> > FCST_SERIES_ANALYSIS_INPUT_TEMPLATE = data.{init?fmt=%Y%m}*.ext
> >
> > This would be translated to data.201804*.ext, so it would find
data
> > from
> > all of the days/hours that match that expression.
> >
> > If you have data in your directory either outside of the desired
time
> > range
> > or between the 3 hour interval, then you can use the 'shift'
keyword
> > to
> > specify each of the times you need in a list. For example:
> >
> > INIT_BEG = 2018040100
> > FCST_SERIES_ANALYSIS_INPUT_TEMPLATE =
data.{init?fmt=%Y%m%d%H}.ext,
> >
> > data.{init?fmt=%Y%m%d%H?shift=3H}.ext,
> >
> > data.{init?fmt=%Y%m%d%H?shift=6H}.ext,
> >
> > data.{init?fmt=%Y%m%d%H?shift=9H}.ext,
> >
> > data.{init?fmt=%Y%m%d%H?shift=12H}.ext
> >
> > This would only the following files: data.2018040100.ext,
> > data.2018040103.ext, data.2018040106.ext,  data.2018040109.ext,
and
> > data.2018040112.ext. This is tedious to type out for your desired
> > time
> > range without writing a script to generate the list. Fortunately
you
> > can
> > combine a list, wildcards, and a little creativity to make this a
> > little
> > easier. For example:
> >
> > INIT_BEG = 2018040100
> > FCST_SERIES_ANALYSIS_INPUT_TEMPLATE =  data.{init?fmt=%Y%m}0*.ext,
> >
> > data.{init?fmt=%Y%m}100*.ext,
> >
> > data.{init?fmt=%Y%m}101*.ext,
> >
> > data.{init?fmt=%Y%m}1021.ext
> >
> > This would match:
> > data.{init?fmt=%Y%m}0*.ext => data.2018040*.ext => all files from
> > April 1-9
> > (assuming files only exist every 3 hours)
> > data.{init?fmt=%Y%m}100*.ext => data.201804100*.ext => all files
from
> > April
> > 10 from 0Z - 9Z (assuming only 0, 3, 6, 9 exist)
> > data.{init?fmt=%Y%m}101*.ext => data.201804101*.ext => all files
from
> > April
> > 10 from 10Z - 19Z (assuming only 12, 15, and 18 exist)
> > data.{init?fmt=%Y%m}101*.ext => data.2018041021.ext => April 10
21Z
> >
> > I understand this is not the most elegant or flexible solution,
but
> > it
> > should accomplish what you need. If you would like some help
setting
> > this
> > up, please send me a directory listing of the data you are using
so I
> > know
> > what additional undesired files are found.
> >
> > *Related future work:*
> > METplus supports notation to define a list of integers with a
> > beginning,
> > end, and increment
> >
> > LEAD_SEQ = begin_end_incr(0,12,3)H
> > is equivalent to:
> > LEAD_SEQ = 0H, 3H, 6H, 9H, 12H
> >
> > However, this functionality is only available for certain
variables,
> > like
> > LEAD_SEQ to define forecast leads. We have discussed enhancing
this
> > logic
> > to allow this notation elsewhere in METplus, such as filename
> > templates. If
> > this was implemented, you would be able to do something like this:
> >
> > INIT_BEG = 2018040100
> > FCST_SERIES_ANALYSIS_INPUT_TEMPLATE =
> > data.{init?fmt=%Y%m%d%H?shift=*begin_end_incr(0,
> > 237, 3)H*}.ext
> >
> > Which would expand out to a list containing:
> >
> > data.{init?fmt=%Y%m%d%H?shift=*0H*}.ext,
> > data.{init?fmt=%Y%m%d%H?shift=*3H*}.ext,
> > data.{init?fmt=%Y%m%d%H?shift=*6H*}.ext,
> > ...
> > data.{init?fmt=%Y%m%d%H?shift=*237H*}.ext
> >
> > or
> >
> > data.2018040100.ext,
> > data.2018040103.ext,
> > data.2018040106.ext,
> > ...
> > data.2018041021.ext
> >
> > I apologize for the lengthy response. Please let me know if
anything
> > is
> > unclear or if I can help in any other way.
> >
> > Thanks,
> > George
> >
> > On Mon, Mar 23, 2020 at 4:38 PM John Halley Gotway via RT
> > <met_help at ucar.edu>
> > wrote:
> >
> >>
> >> Mon Mar 23 16:38:25 2020: Request 94689 was acted upon.
> >> Transaction: Given to mccabe (George McCabe) by johnhg
> >>       Queue: met_help
> >>     Subject: metplus 3.0 for series_analysis
> >>       Owner: mccabe
> >>  Requestors: swei at albany.edu
> >>      Status: open
> >> Ticket <URL:
https://rt.rap.ucar.edu/rt/Ticket/Display.html?id=94689
> >> >
> >>
> >>
> >> This transaction appears to have no content
> >>
> >
> >
> > --
> > George McCabe - Software Engineer III
> > National Center for Atmospheric Research
> > Research Applications Laboratory
> > 303-497-2768
> > ---
> > My working day may not be your working day. Please do not feel
> > obliged to
> > reply to this email outside of your normal working hours.
> >



------------------------------------------------


More information about the Met_help mailing list