【问题标题】:R calculates wrong?R计算错误?
【发布时间】:2022-10-15 01:42:11
【问题描述】:

这个怎么可能?

> mode(daten[1,16])
[1] "numeric"
> mode(weku)
[1] "numeric"
>
> weku
[1] 10.47855
> daten[1,16]
[1] 814995955
> daten[1,16]/weku
[1] 77777557
>
> 814995955/10.47855
[1] 77777551
> 

我不明白。我怎样才能得到正确的计算?

谢谢 基督教

【问题讨论】:

  • @dcarlson,请作为答案发布。
  • sprintf("%f16",weku)?
  • 试试format(weku, 10)。我认为它不完全是 10.47855,而是显示了多少位数。
  • 我敢打赌sprintf("%s", d) 打印[1] "10.4785491"

标签: r calculation


【解决方案1】:

daten[1,16]/weku 是正确的。

R 不会显示它在内部存储的所有十进制值。控制台上打印的内容由options("digits") 控制。

例如,比较print(pi)print(pi, digits=10)print(pi, digits=22)

【讨论】:

    猜你喜欢
    • 2021-01-10
    • 1970-01-01
    • 1970-01-01
    • 2016-09-11
    • 2014-11-10
    • 2016-08-30
    • 1970-01-01
    相关资源
    最近更新 更多