gpt4 book ai didi

r - 编写每个架构不同的 R 包

转载 作者:行者123 更新时间:2023-12-04 17:28:00 24 4
gpt4 key购买 nike

我正在编写一个 R 包,您可以在其中创建网络并以不同的文件类型输出它们。我找到了 SVGRTipsDevice 包,它可用于创建包含工具提示和超链接的 SVG 图片,这是我非常喜欢的。我已将此作为输出选项之一包含在我的包中,使其不是我的包的重要组成部分,但仍然是其中的一部分(我想保留一个)。

现在的问题是,该软件包仅适用于 32 位用户。因为我的包依赖于它 64 位用户无法安装它。似乎我要么必须将我的包也设为 32 位,要么删除 SVG 功能(目前我选择后者上传到 CRAN,并在我的网站上提供完整包的链接)。

有没有办法以不同的方式做到这一点?就像让任何人都可以安装这个包,但只让 32 位用户可以使用 SVG 功能?

最佳答案

我能想到的最简单的方法是检查 Sys.info()对于机器类型:

所以在我的机器上:

 Sys.info()["machine"]
machine
"x86_64"

编辑 我相信这告诉我们硬件的架构,而不是 R 是 32 位还是 64 位。所以如果用户有 64 位硬件并且运行 32 位 R,上面的代码仍然会返回 x86_64正如 Sacha 向我指出的那样,更好的解决方案是运行:
R.Version()$arch
[1] "x86_64"

所以你可以看到我正在运行 64 位操作系统,并且我正在运行 64 位版本的 R。

关于r - 编写每个架构不同的 R 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4652091/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com