如何检查加速度列中的峰值?
How to check peak in the acceleration column?
我有一个数据框,其中 'AccelerationG' 列用于时间戳。我想查看设备的 vibration/acceleration 并检查它是否超过峰值?
AccelerationG
0.95
0.93
1.12
1.12
0.95
0.93
1.12
0.95
1.12
1.12
0.93
0.93
1.12
1.12
0.95
5.42
10.66
14.39
How can I approach this?
dat=[0.95,0.93,1.12,1.12,0.95,0.93,1.12,0.95,1.12,1.12,
0.93,0.93,1.12,1.12,0.95,5.42,10.66,14.39]
import numpy as np
import matplotlib.pyplot as p
%matplotlib inline
p.figure(figsize=(10,10))
p.subplot(221)
p.plot(dat, '.-')
p.title('all data')
p.subplot(222)
p.plot(dat[:-3],'.-')
p.title('data truncated')
p.subplot(223)
mn=np.mean(dat[:-3]) # DC
p.plot(dat[:-3]- mn,'.-') # subtract DC
p.title('DC removed')
p.subplot(224)
p.psd(dat[:-3]-mn,12,1/0.01);
p.title('power spectral density')
如果数据是在 100 赫兹下采集的,超过 140 毫秒,那么在 35 赫兹处会有一个频率峰值。
我有一个数据框,其中 'AccelerationG' 列用于时间戳。我想查看设备的 vibration/acceleration 并检查它是否超过峰值?
AccelerationG
0.95
0.93
1.12
1.12
0.95
0.93
1.12
0.95
1.12
1.12
0.93
0.93
1.12
1.12
0.95
5.42
10.66
14.39
How can I approach this?
dat=[0.95,0.93,1.12,1.12,0.95,0.93,1.12,0.95,1.12,1.12,
0.93,0.93,1.12,1.12,0.95,5.42,10.66,14.39]
import numpy as np
import matplotlib.pyplot as p
%matplotlib inline
p.figure(figsize=(10,10))
p.subplot(221)
p.plot(dat, '.-')
p.title('all data')
p.subplot(222)
p.plot(dat[:-3],'.-')
p.title('data truncated')
p.subplot(223)
mn=np.mean(dat[:-3]) # DC
p.plot(dat[:-3]- mn,'.-') # subtract DC
p.title('DC removed')
p.subplot(224)
p.psd(dat[:-3]-mn,12,1/0.01);
p.title('power spectral density')
如果数据是在 100 赫兹下采集的,超过 140 毫秒,那么在 35 赫兹处会有一个频率峰值。