[Thread Prev][Thread Next][Index]

Re: [ferret_users] how to set missing value on one fixed time



Hi Luiz,
If the data should have been sampled at specific intervals, but there are times when the data is missing, then it is probably best to fill with bad values before reading.  If the intervals are just irregular you can read it as is.

It's possible to construct a time axis if an ASCII file contains time variables, as described in this FAQ:
http://ferret.pmel.noaa.gov/Ferret/FAQ/axes_and_data/time_axis_from_variables.html

This will work fine whether the times are regular or irregularly spaced.  However, if the file doesn't contain time steps with missing-data flags where there is missing data, the method will create an axis without gaps - it will appear that there are short time intervals and long time intervals, rather than short intervals, gaps, and more short intervals.

Ansley

Luiz Alexandre de Araujo Guerra wrote:

Hi Ansley,

It was a great explanation. Thank you. I´d like to extend the question... I want to load an wind data file from a station writen in ASCII. The problem is: the data is unevenly spaced in time... there are some lags. How should I proceed? Must I fill with bad values the time lags before the reading? I would appreciate your comments.

Best regards,

Alex

--
Luiz Alexandre de Araujo Guerra
Aluno de Doutorado

Universidade Federal do Rio de Janeiro / Brazil
COPPE/PEnO

On Wed, 30 Aug 2006 16:17:49 -0700, Ansley Manke wrote
> Hi Dawn,
> If zero is always going to be a bad value, and there are no other missing data, this is very simple. You can set the bad -data flag to be 0.
>
>    SET VAR/BAD=0  temp
>    SET VAR/BAD=0  sst
>
> If there is already a bad-data flag, and you want places where temp is 0 also to be marked as missing, then define a new variable. (this concept is called masking, if you want to read about it in the Users Guide.)
>
>    LET my_temp = IF temp NE 0 THEN temp
>
> If you want to only ignore 0 when it is in that one part of the time axis, you could make a fancier mask. For instance, here's a variable on a monthly time axis, and say we want to mask out data at just one time.  We need to get the time coordinate for that month (here it's some number of days since the year 1700).  You can run this example using the online dataset:
>
> yes? SET DATA "http://ferret.pmel.noaa.gov/NVODS-FDS/LAS/coads_time_series_1854_1993/sst"
> yes? LET tt = T[GT=sst]
>  
> ! dec1980 is the time coordinate corresponding to 15-dec-1980
>
> yes? LET  dec1980 = TT[T=15-dec-1980]
>  
> ! define a mask: 1 at all times except the one time.
>
> yes? LET tmask = IF tt NE dec1980 THEN 1  ! There is an implied "else missing"
>  
> ! Check that the mask variable is missing in December 1980
>
> yes? LIST/T=1-sep-1980:1-mar-1981 tt, tmask
>              DATA SET: http://ferret.pmel.noaa.gov/NVODS-FDS/LAS/coads_time_series_1854_1993/sst
>              TIME: 01-SEP-1980 00:00 to 01-MAR-1981 00:00
>  Column  1: TT is T[GT=SST]
>  Column  2: TMASK is IF TT NE DEC1980 THEN 1
>                              TT   TMASK
> 15-SEP-1980 00 / 1521:  102525.  1.000
> 15-OCT-1980 00 / 1522:  102555.  1.000
> 15-NOV-1980 00 / 1523:  102586.  1.000
> 15-DEC-1980 00 / 1524:  102616.   ....
> 15-JAN-1981 00 / 1525:  102647.  1.000
> 15-FEB-1981 00 / 1526:  102678.  1.000
>  
> ! Apply the mask to a variable. December 1980 is missing in the masked var.
>
> yes? LET var = sst[X=300:320@AVE,Y=20:40@ave]
> yes? LET masked_var = tmask * var
>  
> yes? LIST/T=1-sep-1980:1-mar-1981 var, masked_var
>              DATA SET: http://ferret.pmel.noaa.gov/NVODS-FDS/LAS/coads_time_series_1854_1993/sst
>              TIME: 01-SEP-1980 00:00 to 01-MAR-1981 00:00
>              LONGITUDE: 60W to 40W
>              LATITUDE: 20N to 40N
>  Column  1: VAR is SST[X=300:320@AVE,Y=20:40@AVE]
>  Column  2: MASKED_VAR is TMASK * VAR
>                           VAR  MASKED_VAR
> 15-SEP-1980 00 / 1521:  26.80   26.80
> 15-OCT-1980 00 / 1522:  26.04   26.04
> 15-NOV-1980 00 / 1523:  24.14   24.14
> 15-DEC-1980 00 / 1524:  22.60    ....
> 15-JAN-1981 00 / 1525:  21.85   21.85
> 15-FEB-1981 00 / 1526:  21.20   21.20

>  
>




[Thread Prev][Thread Next][Index]

Dept of Commerce / NOAA / OAR / PMEL / TMAP

Contact Us | Privacy Policy | Disclaimer | Accessibility Statement