【发布时间】:2010-12-02 09:09:13
【问题描述】:
有谁知道是否有可能找到其中有间隙的信号的功率谱密度。例如(在 matlab 语法中,这是我所熟悉的)
ta=1:1000;
tb=1200:3000;
t=[ta tb]; % this is the timebase
signal=randn(size(t)); this is a signal
figure(101)
plot(t,signal,'.')
我希望能够在更长的时间基础上确定频率,而不是仅确定数据的各个部分。显然,我可以只取各个部分的 PSD,但这会限制最低频率。我可以对数据进行插值,但这会使 PSD着色。
任何想法将不胜感激。
【问题讨论】:
-
你所说的“间隙”实际上是Matlab用零填充的,而零是信号的合法值,所以就PSD而言,没有间隙,只是一个信号零的偶尔部分。信号中的间隙实际上是缺失的信息,只要您没有任何信号模型,用零替换缺失的信息与任何其他值一样是任意的。您可以尝试在频谱域中对信号进行建模,并使用该模型来插入缺失的信息。
-
其实对于上面代码产生的图,区域(t>1000 &t
-
当你告诉 Matlab 类似
a[1 2 4] = [1 1 1];时,Matlab 用零填充第三个元素(其索引缺失)。 -
@Itamar Katz:我没有这样做。 t 是两组时间索引的串联。
-
你说得对,我误读了代码。工作时间太长...
标签: python math matlab signal-processing