lexloser 2021-11-05 09:50 采纳率: 100%
浏览 178
已结题

有时间请大家给解惑下? python一直出TypeError: 'numpy.float64' object cannot be interpreted as an integer,不知如何是好啊

版本:Python 3.9.1+numpy 1.21.3
运行出错!!,求解惑。

#Compute and Plot FFT
tic = time.perf_counter()
plt.figure(3)  
xf = np.linspace(0.0, 1.0/(2.0*T), N/2)
yf = fft(x)
plt.plot(xf, 2.0/N * np.abs(yf[0:np.int(N/2)]))
plt.grid()
plt.xlabel('Frequency (Hz)')
plt.ylabel('Accel (g)')
plt.title('FFT - ' + file_path)
toc = time.clock()
print("FFT Time:",toc-tic)
plt.show()

Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\vibration analysis\vibration-analysis-MATLAB-Python-functions\Load_Plot_RMS_FFT.py", line 58, in
xf = np.linspace(0.0, 1.0/(2.0*T), N/2)
File "<__array_function__ internals>", line 5, in linspace
File "D:\python\lib\site-packages\numpy\core\function_base.py", line 120, in linspace
num = operator.index(num)
TypeError: 'numpy.float64' object cannot be interpreted as an integer

  • 写回答

1条回答 默认 最新

  • CSDN专家-HGJ 2021-11-05 10:56
    关注

    出现错误在于这行:xf = np.linspace(0.0, 1.0/(2.0*T), N/2),N/2是浮点数,而点数应该是整数,所以报错。将其改成:N//2即可,另外代码中还有些弃用的函数,比如time.clock()要改成time.perf_counter()

    如对你有帮助,请点击采纳。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月13日
  • 已采纳回答 11月5日
  • 创建了问题 11月5日

悬赏问题

  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改