watex.methods.em.MT.remove_noises#

MT.remove_noises(method='base', window_size_factor=0.1, beta=1.0, rotate=0.0, args=(), **funckws)[source]#

remove indesired and artifacts in the data and smooth it.

method: str, default=’base’

Kind of filtering technique to smooth data. Can be:

  • ‘base’: for simple moving-average using convolution strategy

  • ‘ama’: For adaptatve moving average

  • ‘torres’: Torres -Verdin frequencies

frange: tuple, Optional

Lowcut and highcut frequency for Butterworth signal processing using bandpass filter.

signal_frequency: float,

Sampling frequency to apply the bandpass filter.

return_z: bool, default=True

Output the corrected impedance tensor Z. If False, the corrected resistivity and phase should be outpoutted.

update_z: bool , default =True,

Update Impedance tensor after removing artifacts, outliers and interferences.

Returns

self

Return type

watex.methods.ZC for method chaining.

Examples

>>> import numpy as np
>>> import watex
>>> from watex.methods import ZC
>>> edi_sample = watex.fetch_data ('edis', samples =17 , return_data =True )
>>> zo = ZC ().fit(edi_sample)
>>> zo.ediObjs_[0].Z.z[:, 0, 1][:7]
array([10002.46 +9747.34j , 11679.44 +8714.329j, 15896.45 +3186.737j,
       21763.01 -4539.405j, 28209.36 -8494.808j, 19538.68 -2400.844j,
        8908.448+5251.157j])
>>> np.abs(zo.ediObjs_[0].Z.z[:, 0, 1][:7])
array([13966.38260707, 14572.19436577, 16212.72387076, 22231.39226441,
       29460.64755851, 19685.63100474, 10340.94268466])
>>> zc = zo.remove_noises ()
>>> zc[0].z[:, 0, 1] [:7]
array([14588.73938176+11356.3381261j , 12023.27409262+12873.67522641j,
       10462.96087917+13718.67827836j,  9607.98778456+14140.06466089j,
        9229.1405574 +14224.47255512j,  9147.25685955+14021.44219373j,
        9217.44417983+13581.57833074j])
>>> np.abs( zc[0].z[:, 0, 1] [:7])
array([18487.77251005, 17615.06837175, 17253.2803856 , 17095.46307891,
       16956.19812634, 16741.36043596, 16414.03506644])