nan相关内容

对未设置的值使用 IEEE754 浮点 NaN 是个好主意吗?

对于因非数学原因未定义的值使用 IEEE754 浮点 NaN(非数字)是否是个好主意? 在我们的例子中,它们尚未设置,因为尚未从其他设备接收到这些值.上下文是使用 IEC1131 REAL32 值的嵌入式系统.编辑: 编程语言是 C,所以我们很可能会使用来自 C99 的 NAN 和 isnanf(x).虽然我们可能需要一些额外的扭曲才能将它们纳入我们的操作系统兼容层. 编程语言的默认设 ..
发布时间:2022-01-19 00:03:41 其他开发

Python 和 Numpy 的 nan 和 set

我在使用 Python 的 Numpy、set 和 NaN(非数字)时遇到了无法预料的行为: >>>设置([np.float64('nan'),np.float64('nan')])设置([南,南])>>>设置([np.float32('nan'),np.float32('nan')])设置([南,南])>>>设置([np.float('nan'),np.float('nan')])设置([南, ..
发布时间:2022-01-17 18:05:20 Python

为什么无穷大 × 0 = NaN?

IEEE 754 将 1/0 的结果指定为 ∞(无穷大). 但是,IEEE 754 然后将 0 × ∞ 的结果指定为 NaN. 这感觉反直觉:为什么 0 × ∞ 不是 0? 我们可以将 1/0 = ∞ 视为 1/z 的极限,因为 z 趋于零 我们可以认为 0 × ∞ = 0 是 0 × z 的极限,因为 z 趋于 ∞. 为什么 IEEE 标准遵循直觉 1. 而不是 2 ..
发布时间:2022-01-17 09:30:13 其他开发

强制 gfortran 在第一个 NaN 处停止程序

为了调试我的应用程序 (fortran 90),我想将所有 NaN 转换为信号 NaN. 使用默认设置,我的程序在没有任何信号的情况下工作,只在文件中输出 NaN 数据.我想找到生成 NaN 的点.如果我可以用信号 NaN 重新编译程序,我将在第一个错误浮动操作所在的第一个点得到一个 SIGFPE 信号. 解决方案 你要找的标志是 -ffpe-trap=invalid;我通常添加 , ..
发布时间:2022-01-14 10:00:02 其他开发

在 FORTRAN 中具有具有 NaN 值的参数(常量)变量

是否可以用 NaN 设置参数变量?并将其放在特定模块中.我想用它来初始化其他一些变量.因此,如果它们没有更新,我将面临运行时错误,而不是使用一些随机数运行的模拟.我正在使用 GFORTRAN. 解决方案 有可能.您首先必须找出哪个位模式代表可能的 NaN 值之一.您可以将位模式存储为整数: 使用,内在 :: iso_fortran_env真实(真实64)x整数(int64)我x = 0 ..
发布时间:2022-01-14 09:34:42 其他开发

Pandas:仅在数据帧的开头和结尾删除 NaN

我有一个看起来像这样的 pandas DataFrame: 总和1948 南1949 南1950 51951 31952 南1953 41954 81955 南 我想只在开头和结尾截断 NaN(即只保留从 1950 到 1954 的值,包括 NaN).我已经尝试过 .isnull() 和 dropna(),但不知何故我找不到合适的解决方案.有人可以帮忙吗? 解决方案 使用内置的fir ..
发布时间:2022-01-11 09:40:27 Python

如何在 Python 的滚动平均值计算中忽略 NaN

对于时间序列销售预测任务,我想创建一个表示过去 3 天平均销售额的特征.当我想预测未来几天的销售额时,我遇到了问题,因为这些数据点没有销售数据(NaN 值).Pandas 提供 rolling_mean(),但是当窗口中的任何数据点为 NaN 时,该函数会导致 NaN 输出. 我的数据: 日期销售02-01-2013 100.003-01-2013 200.004-01-2013 300. ..
发布时间:2022-01-11 09:25:20 Python

在 R 的数据集中将 -inf、NaN 和 NA 值替换为零

我正在尝试在 R 中运行一些交易策略.我已经下载了一些股票价格并计算了回报.新的返回数据集有许多 -inf、NaN 和 NA 值.我正在复制数据集的一行(log_ret).它是一个动物园数据集. 图书馆(动物园)log_ret 如何将这些不需要的值替换为 0? 解决方案 根据?zoo: 由数据包含的 zoo 对象下标逻辑值未定义. 因此,您需要将子集包装在 which 调 ..
发布时间:2022-01-11 09:19:56 其他开发

浮点 NaN 有效载荷有什么用途?

我知道 IEEE 754 将 NaN 定义为具有以下按位表示: 符号位可以是 0 或 1 指数字段包含所有1位 尾数的某些位用于指定它是安静 NaN 还是信号 NaN 尾数不能全部为 0 位,因为该位模式保留用于表示无穷大 尾数的剩余位构成有效载荷 当计算的输入为 NaN 时,有效载荷(与整个 NaN 一样)传播到浮点计算的结果,尽管我不知道这种传播的细节或标准是否指定如何这个 ..
发布时间:2022-01-09 10:54:07 其他开发

numpy 或 scipy 有哪些可能的计算可以返回 NaN?

在 Python 中,哪些最常见的操作会导致使用 NumPy 或 SciPy 时产生的 NaN? 例如: 1e500 - 1e500>>>楠 这种行为的原因是什么,为什么它不返回 0? 解决方案 如果您执行以下任何一项操作而没有在浮点环境中徘徊,您应该得到一个之前没有的 NaN:p> 0/0(顶部和底部都可以) inf/inf(在顶部和底部签名) inf - inf 或 ( ..
发布时间:2022-01-09 10:46:58 Python

如何在 c 中产生 NaN 浮点数?

float f = (float)'a';如果(f 0){}别的{printf("NaN\n");} f 不会大于/等于/小于 0 如果它是 NaN. 但是首先如何产生这样的f呢? 我尝试了各种方法来生成 NaN,但都没有奏效.. 解决方案 使用浮点数,0.0/0.0 不是“除以零"错误;结果是 NaN. 这个 C 程序打印 -nan: #include ..
发布时间:2022-01-09 10:42:43 其他开发

NaN 的位模式真的依赖于硬件吗?

我正在阅读 Java 语言规范中的浮点 NaN 值(我很无聊).32 位 float 具有这种位格式: seee eeee emmm mmmm mmmm mmmm mmmm mmmm s 是符号位,e 是指数位,m 是尾数位.NaN 值被编码为全 1 的指数,并且尾数位不全为 0(这将是 +/- 无穷大).这意味着有许多不同的可能 NaN 值(具有不同的 s 和 m 位值). 对此,JL ..
发布时间:2022-01-09 10:40:19 Java开发

产生 NaN 浮点数时停止调试器

我有一个 C++ 程序.在程序中的某处(难以重现,但可重现)计算会导致浮点蜂设置为 NaN.由于涉及 NaN 的浮点运算会导致 NaN,因此传播速度很快. 有什么方法可以设置编译器 (gcc 4.4) 或调试器 (gdb) 在浮点运算导致 NaN 时停止?这将非常有用. 谢谢!内森 PS:这可能很重要:我在 ubuntu linux 10.10 下工作. 解决方案 您可以 ..
发布时间:2022-01-09 10:37:14 C/C++开发

为什么 IEEE 754 保留这么多 NaN 值?

似乎 IEEE 754 标准将 16​​,777,214 个 32 位浮点值定义为 NaN,或所有可能值的 0.4%. 我想知道保留这么多有用值的理由是什么,而本质上只需要两个:一个用于信令,一个用于安静的 NaN. 对不起,如果这个问题很琐碎,我在互联网上找不到任何解释. 解决方案 IEEE-754 标准将 NaN 定义为指数中全为 1 且有效数非零的数字.有效数字中的最高位 ..
发布时间:2022-01-09 10:30:23 其他开发

在 JavaScript 中,为什么零除以零返回 NaN,而任何其他除以零返回 Infinity?

在我看来,代码 console.log(1/0) 应该返回 NaN,但它返回的是 Infinity.但是这段代码: console.log(0/0) 确实返回NaN.有人可以帮我理解这个功能的原因吗?在 x/0 where x !== 0 的情况下,不仅看起来不一致,而且似乎也有错误 解决方案 因为浮点数是这样定义的(更普遍的不仅仅是 Javascript).例如: http: ..
发布时间:2022-01-09 10:30:13 前端开发

安静 NaN 和信号 NaN 有什么区别?

我已阅读有关浮点的信息,并且我知道 NaN 可能是由运算产生的.但我不明白这些到底是什么概念.它们有什么区别? 在 C++ 编程过程中可以产生哪一个?作为程序员,我可以编写一个导致 sNaN 的程序吗? 解决方案 当操作导致安静的 NaN 时,在程序检查结果并看到 NaN 之前,没有任何迹象表明有任何异常.也就是说,如果浮点是在软件中实现的,那么在没有来自浮点单元 (FPU) 或库的 ..
发布时间:2022-01-09 10:10:02 其他开发

为什么 NaN 不等于 NaN?

相关的 IEEE 标准定义了一个数字常量 NaN(不是数字),并规定 NaN 应该与自身不相等.这是为什么呢? 我熟悉的所有语言都执行此规则.但它经常会导致严重的问题,例如当 NaN 存储在容器中时的意外行为,当 NaN 在正在排序的数据中时等等.更不用说,绝大多数程序员都希望任何对象都等于自身(在他们了解 NaN 之前),因此让他们感到惊讶增加了错误和混乱. IEEE 标准经过深思熟 ..
发布时间:2022-01-09 09:55:03 其他开发