[问题] 型别转换?

楼主: ljta (ljta)   2014-05-22 19:42:33
文章分类提示:
- 问题: 当你想要问问题时,请使用这个类别
[问题类型]:
程式咨询(我想用R 做某件事情,但是我不知道要怎么用R 写出来)
[软件熟悉度]:
使用者(已经有用R 做过不少作品)
[问题叙述]:
我遇到的问题如程式范例写的那样,想了解一下这是怎么回事?
烦请对这部份熟悉原因的人指教。谢谢!
[程式范例]:
> length(coefVec)^(1/3)
[1] 32
> as.integer(length(a)^(1/3))
[1] 31
> as.integer((32*32*32)^(1/3))
[1] 31
> as.integer(length(a))^(1/3)
[1] 32
作者: andrew43 (讨厌有好心推文后删文者)   2014-05-22 20:33:00
看起来很可怕。我认为型别转换能免就免……用round()吧。
作者: yanchenglin (LIN)   2014-05-22 21:31:00
数值法计算误差问题,在R把小数点位数开到最大即可知
作者: yanchenglin (LIN)   2014-05-22 21:32:00
options(digits=22);(32*32*32)^(1/3) !=32
作者: yanchenglin (LIN)   2014-05-22 21:33:00
R一般使用digits=7 有兴趣可以查根号和立方根的数值法
作者: yanchenglin (LIN)   2014-05-22 21:34:00
看到IP发现自己所上的!! 同学or学长姐or教授 好 XD
作者: obarisk (OSWALT)   2014-05-23 06:27:00
查integer的说明,他有明说用的是trunc()
作者: obarisk (OSWALT)   2014-05-23 06:28:00
也有说,可能用round是比较适合的!
楼主: ljta (ljta)   2014-05-23 09:12:00
谢谢楼上

Links booklink

Contact Us: admin [ a t ] ucptt.com