obspy.core.trace.Stats

class Stats(header={})[source]

Bases: obspy.core.util.attribdict.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_rate : float, optional
Sampling rate in hertz (default value is 1.0).
delta : float, optional
Sample distance in seconds (default value is 1.0).
calib : float, optional
Calibration factor (default value is 1.0).
npts : int, optional
Number of sample points (default value is 0, which implies that no data is present).
network : string, optional
Network code (default is an empty string).
location : string, optional
Location code (default is an empty string).
station : string, optional
Station code (default is an empty string).
channel : string, optional
Channel code (default is an empty string).
starttime : UTCDateTime, optional
Date and time of the first data sample given in UTC (default value is “1970-01-01T00:00:00.0Z”).
endtime : UTCDateTime, 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
    

Attributes

__abstractmethods__
__dict__
__doc__
__hash__
__module__
__reversed__
__slots__
__weakref__ list of weak references to the object (if defined)
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 If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v
values

Private Methods

Warning

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

_pretty_str Return better readable string representation of AttribDict object.
_repr_pretty_

Special Methods

__contains__
__deepcopy__
__delattr__
__delitem__
__dir__ Default dir() implementation.
__eq__ Return self==value.
__format__ Default object formatter.
__getattr__ Py3k hasattr() expects an AttributeError no KeyError to be raised if the attribute is not found.
__getitem__
__getstate__
__init__
__init_subclass__ This method is called when a class is subclassed.
__iter__
__len__
__new__ Create and return a new object.
__reduce__ Helper for pickle.
__reduce_ex__ Helper for pickle.
__repr__ Return repr(self).
__setattr__
__setitem__
__setstate__
__sizeof__ Size of object in memory, in bytes.
__str__ Return better readable string representation of Stats object.
__subclasshook__ Abstract classes can override this to customize issubclass().