首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用R生成向量(10^16 + 1,10^16 + 2,…,10^16 + 1000)?

如何使用R生成向量(10^16 + 1,10^16 + 2,…,10^16 + 1000)?
EN

Stack Overflow用户
提问于 2018-11-10 16:03:46
回答 1查看 34关注 0票数 0

我想创建以下向量(10^16 + 1,10^16 + 2,…,10^16 + 1000)。但如果我像这样尝试:

代码语言:javascript
复制
daten <- rep(1e+16,1000)
daten + 1:1000

它只给了我一个近似:

代码语言:javascript
复制
[1] 10000000000000000 10000000000000002 10000000000000004 10000000000000004
[5] 10000000000000004 10000000000000006 10000000000000008 10000000000000008
[9] 10000000000000008 10000000000000010 10000000000000012 10000000000000012
[13] 10000000000000012 10000000000000014 10000000000000016 10000000000000016 
 ......

怎样才能使R计算得更精确?谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-10 16:31:10

Rmpfr包允许您根据需要提供足够的精度。使用mpfr函数创建数字,指定值+所需的精度位数。

代码语言:javascript
复制
library(Rmpfr)
daten <- mpfr(1:1000, 120)
daten <- daten + mpfr(1e16, 120)
print(daten[1:5])

这将产生以下结果:

代码语言:javascript
复制
5 'mpfr' numbers of precision  120   bits 
[1] 10000000000000001 10000000000000002 10000000000000003 10000000000000004 10000000000000005
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53240770

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档