obspy.core.trace.Stats

class Stats(header={})[source]

Bases: AttribDict

A container for additional header information of a ObsPy Trace object.

A Stats object may contain all header information (also known as meta data) of a Trace object. Those headers may be accessed or modified either in the dictionary style or directly via a corresponding attribute. There are various default attributes which are required by every waveform import and export modules within ObsPy such as obspy.io.mseed.

Parameters:

header (dict or Stats, optional) – Dictionary containing meta information of a single Trace object. Possible keywords are summarized in the following Default Attributes section.

Basic Usage

>>> stats = Stats()
>>> stats.network = 'BW'
>>> print(stats['network'])
BW
>>> stats['station'] = 'MANZ'
>>> print(stats.station)
MANZ

Default Attributes

sampling_ratefloat, optional

Sampling rate in hertz (default value is 1.0).

deltafloat, optional

Sample distance in seconds (default value is 1.0).

calibfloat, optional

Calibration factor (default value is 1.0).

nptsint, optional

Number of sample points (default value is 0, which implies that no data is present).

networkstring, optional

Network code (default is an empty string).

locationstring, optional

Location code (default is an empty string).

stationstring, optional

Station code (default is an empty string).

channelstring, optional

Channel code (default is an empty string).

starttimeUTCDateTime, optional

Date and time of the first data sample given in UTC (default value is “1970-01-01T00:00:00.0Z”).

endtimeUTCDateTime, optional

Date and time of the last data sample given in UTC (default value is “1970-01-01T00:00:00.0Z”).

Notes

  1. The attributes sampling_rate and delta are linked to each other. If one of the attributes is modified the other will be recalculated.

    >>> stats = Stats()
    >>> stats.sampling_rate
    1.0
    >>> stats.delta = 0.005
    >>> stats.sampling_rate
    200.0
    
  2. The attributes starttime, npts, sampling_rate and delta are monitored and used to automatically calculate the endtime.

    >>> stats = Stats()
    >>> stats.npts = 60
    >>> stats.delta = 1.0
    >>> stats.starttime = UTCDateTime(2009, 1, 1, 12, 0, 0)
    >>> stats.endtime
    UTCDateTime(2009, 1, 1, 12, 0, 59)
    >>> stats.delta = 0.5
    >>> stats.endtime
    UTCDateTime(2009, 1, 1, 12, 0, 29, 500000)
    
  3. The attribute endtime is read only and can not be modified.

    >>> stats = Stats()
    >>> stats.endtime = UTCDateTime(2009, 1, 1, 12, 0, 0)
    Traceback (most recent call last):
    ...
    AttributeError: Attribute "endtime" in Stats object is read only!
    >>> stats['endtime'] = UTCDateTime(2009, 1, 1, 12, 0, 0)
    Traceback (most recent call last):
    ...
    AttributeError: Attribute "endtime" in Stats object is read only!
    
  4. The attribute npts will be automatically updated from the Trace object.

    >>> trace = Trace()
    >>> trace.stats.npts
    0
    >>> trace.data = np.array([1, 2, 3, 4])
    >>> trace.stats.npts
    4
    
  5. The attribute component can be used to get or set the component, i.e. the last character of the channel attribute.

    >>> stats = Stats()
    >>> stats.channel = 'HHZ'
    >>> stats.component  
    'Z'
    >>> stats.component = 'L'
    >>> stats.channel  
    'HHL'
    

Attributes

defaults

do_not_warn_on

readonly

warn_on_non_default_key

Public Methods

clear

copy

get

items

keys

pop

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem

as a 2-tuple; but raise KeyError if D is empty.

setdefault

update

values

Private Methods

Warning

Private methods are mainly for internal/developer use and their API might change without notice.

Stats._cast_type(key, value)

Cast type of value to type required in _types dict.

Parameters:
  • key (str) – The key from __setattr__.

  • value – The value being set to key.

Returns:

value cast to correct type.

Stats._pretty_str(priorized_keys=[], min_label_length=16)

Return better readable string representation of AttribDict object.

Parameters:
  • priorized_keys (list[str], optional) – Keywords of current AttribDict which will be shown before all other keywords. Those keywords must exists otherwise an exception will be raised. Defaults to empty list.

  • min_label_length (int, optional) – Minimum label length for keywords. Defaults to 16.

Returns:

String representation of current AttribDict object.

Stats._repr_pretty_(p, cycle)[source]

Special Methods

Stats.__contains__(key)
Stats.__delattr__(name)
Stats.__delitem__(name)
Stats.__dir__()

Default dir() implementation.

Stats.__eq__(other)
Stats.__format__(format_spec, /)

Default object formatter.

Stats.__ge__(value, /)

Return self>=value.

Stats.__getattr__(name, default=None)

Py3k hasattr() expects an AttributeError no KeyError to be raised if the attribute is not found.

Stats.__getattribute__(name, /)

Return getattr(self, name).

Stats.__getitem__(key, default=None)[source]
Stats.__getstate__()[source]
Stats.__gt__(value, /)

Return self>value.

Stats.__init__(header={})[source]
Stats.__init_subclass__()

This method is called when a class is subclassed.

The default implementation does nothing. It may be overridden to extend subclasses.

Stats.__iter__()
Stats.__le__(value, /)

Return self<=value.

Stats.__len__()
Stats.__lt__(value, /)

Return self<value.

Stats.__ne__(value, /)

Return self!=value.

Stats.__new__(**kwargs)
Stats.__reduce__()

Helper for pickle.

Stats.__reduce_ex__(protocol, /)

Helper for pickle.

Stats.__repr__()
Stats.__setattr__(key, value)
Stats.__setitem__(key, value)[source]
Stats.__setstate__(state)[source]
Stats.__sizeof__()

Size of object in memory, in bytes.

Stats.__str__()[source]

Return better readable string representation of Stats object.

classmethod Stats.__subclasshook__(C)