带频率范围的Matlab Meanfreq函数

带频率范围的Matlab Meanfreq函数,matlab,signal-processing,Matlab,Signal Processing,使用matlab Meanfreq中的内置函数来计算我的信号的平均频率,该信号由具有70kHz到500kHz上下可靠范围的传感器记录 根据帮助,我应该能够指定此可靠范围,但当我这样做时,MeanFreq返回的值超出此范围0.176 kHz,这显然是不正确的 有人知道什么窍门吗 短暂性脑缺血发作 我使用的代码不包括频率范围: Fs = 1e6; figure() meanfreq(signal, Fs) 然后用我的频率范围 freqrange = [70,500]; Fs = 1e6; figu

使用matlab Meanfreq中的内置函数来计算我的信号的平均频率,该信号由具有70kHz到500kHz上下可靠范围的传感器记录

根据帮助,我应该能够指定此可靠范围,但当我这样做时,MeanFreq返回的值超出此范围0.176 kHz,这显然是不正确的

有人知道什么窍门吗

短暂性脑缺血发作

我使用的代码不包括频率范围:

Fs = 1e6;
figure()
meanfreq(signal, Fs)
然后用我的频率范围

freqrange = [70,500];
Fs = 1e6;
figure()
meanfreq(signal, Fs, freqrange)
如果我尝试

freqrange = [7e4, 5e5];
我得到一个错误:

> Error using psdparserange>parseTime (line 103) The frequency range
> must be within the range of F for the specified input.
编辑尝试

Fs = 1e6;
figure()
meanfreq(signal, Fs)

figure()
meanfreq(signal,freqrange)
产生大量错误

Error using meanfreq
Expected input number 1, Pxx, to be nonnegative.

Error in psdparserange>parsePSD (line 121)
validateattributes(Pxx,{'numeric'},{'2d','nonnegative'}, funcName,'Pxx',1);

Error in psdparserange (line 40)
  [Pxx, F, Frange, rbw] = parsePSD(funcName, varargin{1:min(n,3)});

Error in meanfreq (line 63)
[Pxx, F, Frange, rbw, extraArgs, status] = psdparserange('meanfreq', kaiserBeta, varargin{:});

Error in Main_analysis_Fullsignal (line 30)
meanfreq(signal,freqrange)

我相信这是一个兼容性问题——一旦我开始使用2019b版本的matlab而不是2017a,我就没有问题了

有趣的是,你能给我们看一下由meanfreq函数生成的图吗?问题补充:值得指出的是,平均频率应该用虚线表示,在这种情况下,虚线很难与y轴相对,因为它太低了。