【问题标题】:(Python) RuntimeWarning: invalid value encountered in double_scalars """(Python) RuntimeWarning: double_scalars """ 中遇到无效值
【发布时间】:2019-04-10 13:48:18
【问题描述】:

晚上好,

我是 Python 初学者,每天都在学习一些新东西。 这次我在执行以下代码时遇到了问题:

distance = [np.nan]
speed = [np.nan]
for i in range(1,len(data)):
    distance_dt = distance_cal(data.loc[i-1,'latitude'],data.loc[i-1,'longitude'],data.loc[i,'latitude'],data.loc[i,'longitude'])
speed_dt = distance_dt/(data.loc[i,'delta_time']/3600)
distance.append(distance_dt)
speed.append(speed_dt)
data['distance'] = np.around(distance, decimals=6)
data['speed'] = np.around(speed, decimals=6)

产生的错误是:

C:...site-packages\ipykernel_launcher.py:5: RuntimeWarning: double_scalars 中遇到无效值 """ C:...site-packages\ipykernel_launcher.py:5:RuntimeWarning:在 double_scalars 中遇到除以零 """

我查过了

\ipykernel_launcher.py '代码如下'。

"""Entry point for launching an IPython kernel.

This is separate from the ipykernel package so we can avoid doing import until
after removing the cwd from sys.path.
"""

import sys

if __name__ == '__main__':
    # Remove the CWD from sys.path while we load stuff.
    # This is added back by InteractiveShellApp.init_path()
    if sys.path[0] == '':
        del sys.path[0]

    from ipykernel import kernelapp as app
    app.launch_new_instance()

此外,距离和速度是 excel 中存在的两个变量/数据集,包含值 0,1 或浮点数。

任何帮助将不胜感激。

谢谢。

【问题讨论】:

  • 你称它为错误,但它说这是一个警告。它真的让你的程序崩溃了吗?
  • 你好,尼克,它只是警告,一旦发出警告,它就会停止执行程序,但不会导致程序崩溃。

标签: python


【解决方案1】:

警告说:

RuntimeWarning: divide by zero encountered in double_scalars

这基本上意味着,您正试图将某些内容除以 0

speed_dt = distance_dt/(data.loc[i,'delta_time']/3600)

此语句可能会导致此问题。 尝试将0 转换为大于或小于0 的任何值,然后再次运行。

【讨论】:

  • 您好 Mayank Porwal,感谢您的回答。我不能将值 0 更改为 0 以外的值。因为值很关键。我们不能稍微改一下代码吗?
  • 啊哈抱歉,我弄错了。没错,我们不能将 0 除以 0。因为任何事物除以 0 都是无穷大。我将尝试将 0 更改为 NaN 并回复您的解决方案。谢谢。
  • Python 自动对除后的数字进行四舍五入。要阻止这种情况,您可以将 from __future__ import division 放在脚本的顶部。这将为您提供确切的划分。但是,如果实际值为0,那就没办法了。
  • 我试过了,但没用。我想,可能是我们必须修改一些代码。这对我来说是个小问题。
猜你喜欢
  • 1970-01-01
  • 2016-10-13
  • 1970-01-01
  • 2020-07-06
  • 2015-03-03
  • 2019-05-20
  • 2020-12-01
  • 1970-01-01
  • 2019-05-08
相关资源
最近更新 更多