Purpose of Duplicate Time Entries

27 views
Skip to first unread message

Kevin Nelson

unread,
May 25, 2022, 3:51:18 PM5/25/22
to IBTrACS Q&A
Hello,

I was curious what the purpose was for duplicating time entries in IBTrACS v04r00 in the since 1980 netCDF file.

As an example, the entry for Melor in 2009 has time entries (since 11-17-1858) that are the same. Those data points have different longitude and latitude values between them. Is the purpose of those values to include more location data? And if so, why is the time not updated to reflect the additional observation instead of just duplicating the value.

The duplicated time values cause interpolation routines (interpolating track data to the time of a point data) to fail when they try to decide between which points to use. Please let me know when you get a chance. Thank you for your help!

- Kevin Nelson, Texas A&M University - Corpus Christi

Carl Schreck - NOAA Affiliate

unread,
May 26, 2022, 11:19:55 AM5/26/22
to Kevin Nelson, IBTrACS Q&A
Thanks for the query. Can you let us know which times you are seeing repeated? I do not see them here:

--
You received this message because you are subscribed to the Google Groups "IBTrACS Q&A" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ibtracs-qa+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ibtracs-qa/97189990-d391-4385-a24a-61bedcb03a99n%40googlegroups.com.


--
Carl J. Schreck III, PhD (he/him)
Research Scholar
North Carolina State University
North Carolina Institute for Climate Studies (NCICS)
Cooperative Institute Satellite Earth System Studies (CISESS)
151 Patton Ave. Asheville, NC 28801

office: 828-257-3140
mobile: 828-484-1702

Kevin Nelson

unread,
May 26, 2022, 11:35:43 AM5/26/22
to IBTrACS Q&A
Hi Carl,

Thank you for getting back to me so quickly.

The duplicates I'm seeing are in the raw netCDF data from the v4 release. They seem to fall in patterns/groups of three and before moving to a new time. The following is output from IDL after the data is read in using a custom function:

 ibtracs = read_ibtracs_v4()
% Compiled module: READ_IBTRACS_V4.
% Loaded DLM: NCDF.
% Compiled module: JULDAY.
IDL> ii = WHERE(ibtracs.season EQ 2009 AND ibtracs.storm_name EQ 'MELOR', cnt)
IDL> cnt
           1
IDL> print, ibtracs.storm_time[*,ii]
       2455103.5       2455103.5       2455103.8       2455104.0       2455104.0
       2455104.0
      2455104.2       2455104.5       2455104.5       2455104.5
       2455104.8       2455105.0       2455105.0       2455105.0       2455105.2
       2455105.5       2455105.5       2455105.5       2455105.8       2455106.0
       2455106.0       2455106.0
      2455106.2       2455106.5       2455106.5
       2455106.5
      2455106.8       2455107.0       2455107.0       2455107.0
       2455107.2       2455107.5       2455107.5       2455107.5       2455107.8
       2455108.0       2455108.0       2455108.0       2455108.2       2455108.5
       2455108.5       2455108.5
      2455108.8       2455109.0       2455109.0
       2455109.0
      2455109.2       2455109.5       2455109.5       2455109.5
       2455109.8       2455110.0       2455110.0       2455110.0       2455110.2
       2455110.5       2455110.5       2455110.5       2455110.8       2455111.0
       2455111.0       2455111.0
      2455111.2       2455111.5       2455111.5
       2455111.5
      2455111.8       2455112.0       2455112.0       2455112.0
       2455112.2       2455112.5       2455112.5       2455112.5       2455112.8
       2455112.8       2455112.8
      2455113.0       2455113.0       2455113.0
       2455113.2       2455113.5       2455113.5       2455113.5       2455113.8
       2455114.0       2455114.0       2455114.0       2455114.2       2455114.5
       2455114.5       2455114.5
      2455114.8       2455115.0       2455115.0
       2455115.0
      2455115.2       2455115.5       2455115.5       2455115.5

The times for the storm all have the Julian time of 1858-11-17 added to them as part of the reader function. I have attached the reader function for your reference if needed.

Ultimately, with the duplicates removed, there is little change to the track overall, but the duplicates cause problems when trying to select a single time or interpolating the location/other data to the time of another data point. My solution for now is to just use only the unique time values via the IDL UNIQ function. Let me know what you find out/suggest. Thanks again!

- Kevin Nelson, PhD Candidate, Texas A&M University - Corpus Christi
read_ibtracs_v4.pro

Carl Schreck - NOAA Affiliate

unread,
May 26, 2022, 12:57:27 PM5/26/22
to Kevin Nelson, IBTrACS Q&A
It appears IDL is doing something strange with rounding. Below is what I get in python with a similar script. As you can see, the data are mostly 3-hourly, so every 0.125. IDL is doing some weird rounding. It also appears IDL is adding a 24 to the front of each number.

Python 3.9.12 | packaged by conda-forge | (main, Mar 24 2022, 23:25:59)
[GCC 10.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import xarray as xr
>>>
>>> ds_decoded = xr.open_dataset(
...     '/store/carl/ibtracs/v04r00/IBTrACS.since1980.v04r00.nc')
>>> ds_encoded = xr.open_dataset(
...     '/store/carl/ibtracs/v04r00/IBTrACS.since1980.v04r00.nc',
...     decode_cf=False)
>>> ii = (ds_decoded['season'] == 2009) & (ds_decoded['name'] == b'MELOR')
>>> print(ds_decoded['time'][ii,:].values)
[['2009-09-28T12:00:00.000039936' '2009-09-28T15:00:00.000039936'
  '2009-09-28T18:00:00.000039936' '2009-09-28T21:00:00.000039936'
  '2009-09-29T00:00:00.000039936' '2009-09-29T03:00:00.000039936'
  '2009-09-29T06:00:00.000039936' '2009-09-29T09:00:00.000039936'
  '2009-09-29T12:00:00.000039936' '2009-09-29T15:00:00.000039936'
  '2009-09-29T18:00:00.000039936' '2009-09-29T21:00:00.000039936'
  '2009-09-30T00:00:00.000039936' '2009-09-30T03:00:00.000039936'
  '2009-09-30T06:00:00.000039936' '2009-09-30T09:00:00.000039936'
  '2009-09-30T12:00:00.000039936' '2009-09-30T15:00:00.000039936'
  '2009-09-30T18:00:00.000039936' '2009-09-30T21:00:00.000039936'
  '2009-10-01T00:00:00.000039936' '2009-10-01T03:00:00.000039936'
  '2009-10-01T06:00:00.000039936' '2009-10-01T09:00:00.000039936'
  '2009-10-01T12:00:00.000039936' '2009-10-01T15:00:00.000039936'
  '2009-10-01T18:00:00.000039936' '2009-10-01T21:00:00.000039936'
  '2009-10-02T00:00:00.000039936' '2009-10-02T03:00:00.000039936'
  '2009-10-02T06:00:00.000039936' '2009-10-02T09:00:00.000039936'
  '2009-10-02T12:00:00.000039936' '2009-10-02T15:00:00.000039936'
  '2009-10-02T18:00:00.000039936' '2009-10-02T21:00:00.000039936'
  '2009-10-03T00:00:00.000039936' '2009-10-03T03:00:00.000039936'
  '2009-10-03T06:00:00.000039936' '2009-10-03T09:00:00.000039936'
  '2009-10-03T12:00:00.000039936' '2009-10-03T15:00:00.000039936'
  '2009-10-03T18:00:00.000039936' '2009-10-03T21:00:00.000039936'
  '2009-10-04T00:00:00.000039936' '2009-10-04T03:00:00.000039936'
  '2009-10-04T06:00:00.000039936' '2009-10-04T09:00:00.000039936'
  '2009-10-04T12:00:00.000039936' '2009-10-04T15:00:00.000039936'
  '2009-10-04T18:00:00.000039936' '2009-10-04T21:00:00.000039936'
  '2009-10-05T00:00:00.000039936' '2009-10-05T03:00:00.000039936'
  '2009-10-05T06:00:00.000039936' '2009-10-05T09:00:00.000039936'
  '2009-10-05T12:00:00.000039936' '2009-10-05T15:00:00.000039936'
  '2009-10-05T18:00:00.000039936' '2009-10-05T21:00:00.000039936'
  '2009-10-06T00:00:00.000039936' '2009-10-06T03:00:00.000039936'
  '2009-10-06T06:00:00.000039936' '2009-10-06T09:00:00.000039936'
  '2009-10-06T12:00:00.000039936' '2009-10-06T15:00:00.000039936'
  '2009-10-06T18:00:00.000039936' '2009-10-06T21:00:00.000039936'
  '2009-10-07T00:00:00.000039936' '2009-10-07T03:00:00.000039936'
  '2009-10-07T06:00:00.000039936' '2009-10-07T09:00:00.000039936'
  '2009-10-07T12:00:00.000039936' '2009-10-07T15:00:00.000039936'
  '2009-10-07T18:00:00.000039936' '2009-10-07T19:00:00.000066560'
  '2009-10-07T20:00:00.000053248' '2009-10-07T21:00:00.000039936'
  '2009-10-08T00:00:00.000039936' '2009-10-08T03:00:00.000039936'
  '2009-10-08T06:00:00.000039936' '2009-10-08T09:00:00.000039936'
  '2009-10-08T12:00:00.000039936' '2009-10-08T15:00:00.000039936'
  '2009-10-08T18:00:00.000039936' '2009-10-08T21:00:00.000039936'
  '2009-10-09T00:00:00.000039936' '2009-10-09T03:00:00.000039936'
  '2009-10-09T06:00:00.000039936' '2009-10-09T09:00:00.000039936'
  '2009-10-09T12:00:00.000039936' '2009-10-09T15:00:00.000039936'
  '2009-10-09T18:00:00.000039936' '2009-10-09T21:00:00.000039936'
  '2009-10-10T00:00:00.000039936' '2009-10-10T03:00:00.000039936'
  '2009-10-10T06:00:00.000039936' '2009-10-10T09:00:00.000039936'
  '2009-10-10T12:00:00.000039936' '2009-10-10T15:00:00.000039936'
  '2009-10-10T18:00:00.000039936' '2009-10-10T21:00:00.000039936'
  '2009-10-11T00:00:00.000039936'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT'
                            'NaT'                           'NaT']]
>>> print(ds_encoded['time'][ii,:].values)
[[   55102.5           55102.625         55102.75          55102.875
     55103.            55103.125         55103.25          55103.375
     55103.5           55103.625         55103.75          55103.875
     55104.            55104.125         55104.25          55104.375
     55104.5           55104.625         55104.75          55104.875
     55105.            55105.125         55105.25          55105.375
     55105.5           55105.625         55105.75          55105.875
     55106.            55106.125         55106.25          55106.375
     55106.5           55106.625         55106.75          55106.875
     55107.            55107.125         55107.25          55107.375
     55107.5           55107.625         55107.75          55107.875
     55108.            55108.125         55108.25          55108.375
     55108.5           55108.625         55108.75          55108.875
     55109.            55109.125         55109.25          55109.375
     55109.5           55109.625         55109.75          55109.875
     55110.            55110.125         55110.25          55110.375
     55110.5           55110.625         55110.75          55110.875
     55111.            55111.125         55111.25          55111.375
     55111.5           55111.625         55111.75          55111.79166667
     55111.83333333    55111.875         55112.            55112.125
     55112.25          55112.375         55112.5           55112.625
     55112.75          55112.875         55113.            55113.125
     55113.25          55113.375         55113.5           55113.625
     55113.75          55113.875         55114.            55114.125
     55114.25          55114.375         55114.5           55114.625
     55114.75          55114.875         55115.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.
  -9999000.         -9999000.         -9999000.         -9999000.        ]]


Reply all
Reply to author
Forward
0 new messages