在R中,我试图将一些值转换为-0.5的幂。我的一些值为0,执行此操作时它们返回Inf。为什么会这样?除非我在数学知识上有明显的失误,否则任何东西的幂的0仍然是0,这就是我所期望的。
我的值在1000的范围内,它们会返回正确的结果(即1000 ^(-0.5)= 0.031)
我做错了什么吗?在R中我需要做些特别的事情吗?这是我的代码示例:
DF[grep(".SUFFIX", names(henn))] <- DF[grep(".SUFFIX", names(DF))]^(-0.5)
该代码可以很好地用于其他功能,例如我是否+ 10
谢谢!
答案 0 :(得分:2)
您将获得无穷大,因为将0提升至负幂会导致除以0:
0 ^ (-0.5) =
1 / (0^(0.5)) =
1 / 0 = Infinity
答案 1 :(得分:0)
我想出了答案。 0表示任何正功率为0,0表示任何负功率均未定义(除以0)。有道理。