Skip to content
Snippets Groups Projects
Select Git revision
  • 04a74bb70c710d4c4530342a1d076f0e3855fac7
  • main default protected
  • hotfix
  • fixes
  • 2.4.4
  • 2.4.3
  • 2.4.2
  • 2.4.1
  • 2.4
  • 2.3
  • 2.2
  • 2.1
  • 2.0
  • 1.0
14 results

archiveextractor

  • Clone with SSH
  • Clone with HTTPS
  • ArchiveExtractor

    This module brings some functions to extract data from HDB/TDB.

    Quick example

    Usage example, with an ipython prompt

    In [1]: import ArchiveExtractor as AE
    
    In [2]: # Looking for an attribute in HDB
       ...: AE.findattr("ans/dg/*dcct*")
    Out[2]: 
    ['ANS/DG/DCCT-CTRL/State',
     'ANS/DG/DCCT-CTRL/Status',
     'ANS/DG/DCCT-CTRL/current',
     'ANS/DG/DCCT-CTRL/dose',
     'ANS/DG/DCCT-CTRL/lifeTime',
     'ANS/DG/DCCT-CTRL/lifeTimeErr']
    
    In [3]: # Get data between two dates, this return a pandas.Dataframe object
       ...: AE.extract('ANS/DG/DCCT-CTRL/current', '2021-12-13', '2021-12-13-12:00')
    INFO:Perform ExtractBetweenDates (ans/dg/dcct-ctrl/current, 2021-12-13 00:00:00, 2021-12-13 12:00:00)
    Out[3]: 
    2021-12-13 00:00:00    450.993568
    2021-12-13 00:00:01    450.981979
    2021-12-13 00:00:02    450.971455
    2021-12-13 00:00:03    450.950542
    2021-12-13 00:00:04    450.939951
                              ...    
    2021-12-13 11:59:56     15.004553
    2021-12-13 11:59:57     15.004243
    2021-12-13 11:59:58     15.004942
    2021-12-13 11:59:59     15.004878
    2021-12-13 12:00:00     15.005410
    Length: 42725, dtype: float64
    

    Main function help

    Signature: AE.extract(attr, date1, date2=None, method='nearest', db='H')
    Docstring:
    Access function to perform extraction between date1 and date2.
    Can extract one or several attributes.
    date1 and date2 can be both exact date, or one of two can be a time interval that will be taken relative to the other.
    
    
    Parameters:
    -----------
    attr: string, list, dict
        Attribute(s) to extract.
        If string, extract the given attribute, returning a pandas.Series.
        If list, extract attributes and return a list of pandas.Series.
        If a dict, extract attributes and return a dict of pandas.Series with same keys.
    
    date1, date2: string, datetime.datetime, datetime.timedelta, None
        Exact date, or duration relative to date2.
        If string, it will be parsed.
        A start date can be given with string format '%Y-%m-%d-%H:%M:%S' or less precise (ie '2021-02', '2022-11-03' '2022-05-10-21:00'.i..).
        A duration can be given with string format 'Xu' where X is a number and u is a unit in ('m':minutes, 'h':hours, 'd':days, 'M':months)
        A datetime.datetime object or datetime.timedelta object will be used as is.
        date2 can be None. In that case it is replaced by the current time.
    
    method: str
        Method of extraction
            'nearest': Retrieve nearest value of date1, date2 is ignored.
            'between': Retrive data between date1 and date2.
    
    db: str
        Which database to look in, 'H' or 'T'.
    

    For developpers

    Contribute

    There is a simple test directory with only a manual test scipt. Please run and check it before proposing merge.