# Zero peaks in fft data even after subtracting mean

I have a time series sensor data. It is for a period of 24 hours sampled every minute (so in total 1440 data points per day). I did a fft on this to see what are the dominant frequencies. But what I got is a very noisy fft and a strong peak at zero. 1. I have already subtracted the mean to remove for the DC component at bin 0. But I still get a strong peak at zero. I'm not able to figure what could be the other reason or what should I try next to remove this. 2. The graph is very different from I have usually seen online as I was learning about fft. In the sense, I'm not able to see dominant peaks like how it is usually seen. Is my fft wrong? Attaching code that i tried and images:

import numpy as np
from matplotlib import pyplot as plt
from scipy.fftpack import fft,fftfreq
x=np.linspace(29,32,1440).tolist()
x=np.array(x)
x=x-x.mean()
N = 1440
# sample spacing
T = 1.0 / 60
yf = fft(x)
yf_abs = abs(yf).tolist()
plt.plot(abs(yf))
plt.show()
freqs = fftfreq(len(x), 60)
plt.plot(freqs,yf_abs)
plt.show()


Since I'm new to this, I'm not able to figure out where I'm wrong or interpret the results. Any help will be appreciated. Thanks! :)

• I (probably we) cannot tell without looking at the data. When you remove the mean, the value at DC or zero should be zero (and seems to be from the graph). The magnitude spectrum does not look noisy either. Jun 13, 2020 at 16:14
• If Dan Bochen's answer is correct (bin 0 has zero value) then this question as written has been answered. I think the larger question you need to ask -- separately -- is "why does my data have unexpectedly high low frequency content?". Show us what you've done, your FFT result, and the input data. Frankly, I'm suspecting that there's a trend in your data, or some daily variation. Nov 10, 2020 at 21:20