obspy.core.stream.Stream.trim

Stream.trim(starttime=None, endtime=None, pad=False, nearest_sample=True, fill_value=None)[source]

Cuts all traces of this Stream object to given start and end time.

Parameters:
  • starttime (UTCDateTime, optional) Specify the start time.
  • endtime (UTCDateTime, optional) Specify the end time.
  • pad (bool, optional) Gives the possibility to trim at time points outside the time frame of the original trace, filling the trace with the given fill_value. Defaults to False.
  • nearest_sample (bool, optional)

    If set to True, the closest sample is selected, if set to False, the next sample containing the time is selected. Defaults to True.

    Given the following trace containing 4 samples, “|” are the sample points, “A” is the requested starttime:
    |        A|         |         |

    nearest_sample=True will select the second sample point, nearest_sample=False will select the first sample point.

  • fill_value (int, float or None, optional) Fill value for gaps. Defaults to None. Traces will be converted to NumPy masked arrays if no value is given and gaps are present.

Note

This operation is performed in place on the actual data arrays. The raw data is not accessible anymore afterwards. To keep your original data, use copy() to create a copy of your stream object.

Example

>>> st = read()
>>> print(st)  
3 Trace(s) in Stream:
BW.RJOB..EHZ | 2009-08-24T00:20:03.000000Z ... | 100.0 Hz, 3000 samples
BW.RJOB..EHN | 2009-08-24T00:20:03.000000Z ... | 100.0 Hz, 3000 samples
BW.RJOB..EHE | 2009-08-24T00:20:03.000000Z ... | 100.0 Hz, 3000 samples
>>> dt = UTCDateTime("2009-08-24T00:20:20")
>>> st.trim(dt, dt + 5)
>>> print(st)  
3 Trace(s) in Stream:
BW.RJOB..EHZ | 2009-08-24T00:20:20.000000Z ... | 100.0 Hz, 501 samples
BW.RJOB..EHN | 2009-08-24T00:20:20.000000Z ... | 100.0 Hz, 501 samples
BW.RJOB..EHE | 2009-08-24T00:20:20.000000Z ... | 100.0 Hz, 501 samples

This Page