当前位置: 首页 > 知识库问答 >
问题:

从Mac OSX终端运行R

龙俊英
2023-03-14

因此,我正在运行Sierra,当我在终端输入“r”或“r”时,我得到“-bash:r:command not found”。如果我在终端中键入“which r”,我不会得到任何输出。

以下是“echo$path”的输出:/versions/2.7/bin://usr/local/bin://bin://bin://sbin://sbin://sbin://users/samuelcolon/.rvm/bin://users/samuelcolon/.rvm/bin

至于安装,我相信我前阵子直接从cran.r-project.org下载的。我可以在应用程序中找到GUI并打开它--我的版本是3.13。有没有可能,我只安装了r.app而没有安装r?也许这就是我在终端输入“r”时得到“命令未找到”的原因?

一般来说,我一直在RStudio中工作,但我仍然希望从终端访问R,并查找东西的位置。如果从起点开始最容易的话,我可以删除并重新安装R。我希望额外的细节有所帮助,我感谢你的回应。

共有1个答案

盖锦程
2023-03-14

对于那些不熟悉终端和bash的人来说,这是一个答案。

我已经做了一个新的更新安装R从R.org cran网站作为寻求答案的一部分,你的问题。

我发现这个最新的安装版本3.4.0在终端中安装了用于访问的R,并且还安装了R.app作为包的一部分。

我只能假设,与一个最新的R新安装,R将为您在终端工作。

要了解正在访问的R文件的位置-在启动R之后的终端中,以及在R.app中,键入:

>r.home()

在我的例子中:

在R.app中-r3.4.0版本是在顶部目录(不是我的用户文件夹)中访问的:

R.home()
[1] "/Library/Frameworks/R.framework/Resources"

在Terminal-R3.3.2版本可以在Anaconda包中访问,也可以在顶层目录中访问。

R.home()
[1] "/anaconda/lib/R"

-

· 第一解决方案:

我可以更新anaconda版本,但是,我不想因为anaconda包的其他元素而依赖于R的这个旧版本,对于那些还不熟悉Terminal和bash的人来说,这不是一个新手解决方案

-

·第二种解决办法:

/Library/Frameworks/R.framework/Resources/bin/R

或者,可以在GUI Finder中找到这个文件和图标,以上面的结果为导向,只需双击它,它就会打开终端和一个为您运行的会话。轻点!

人们也可以为它做一个别名,并把它放在你的桌面上,以便将来轻松开始。

-

alias Rv340='/Library/Frameworks/R.framework/Resources/bin/R'

然后保存更改并退出此终端会话。然后我打开一个新的终端窗口。(因此,以上对env的更改被合并到新的终端会话中)。

然后当我输入别名时:

Rv340

我想要的R版本打开了。

export PATH="/Library/Frameworks/R.framework/Resources:$PATH"

根据我的理解,这可以确保bash在这里查找R(以及其他任何内容),然后转移到Path中的其他路径。由于这将此路径添加到env变量$path的开头,所以bash首先查找这里,在这里它首先找到较新的版本,然后停止查找。

当涉及到理解在。bash_profile中设置的env中的路径时,以下两个链接很有帮助。

关于Path。

 类似资料:
  • 我使用的是一个安装了Ubuntu的云虚拟机。安装的Java版本为: 在编译java程序时,我必须使用两个jar:和。我使用的终端命令是: 使用将disco和sqlite jar添加到类路径中。 这将在目录中创建我的文件,而不会出现错误。这些JAR包含在目录中。 包含这部分代码,从头开始: 当我在终端中运行以下内容时,问题就开始了: 终端机显示我: 错误:出现JNI错误,请检查您的安装并在线程“ma

  • 我想通过运行以下命令从Mac OSX终端运行/打开Visual Studio代码。我在这里找到了说明: https://code.visualstudio.com/docs/setup 显然我需要在我的文件中包含这一点,所以我做了,但没有用。 我在此处编辑了文件:

  • D:\reactnative\awesomeproject>react-native run-android info运行jetifier将库迁移到AndroidX。您可以使用“--no-jetifier”标志禁用它。Jetifier找到863个文件要转发JEtify。使用4个工作者...信息正在启动JS服务器...信息正在启动仿真程序...错误:无法启动仿真程序。原因:未找到作为输出的仿真器。警

  • 我在个人Ubuntu服务器机器中有以下PHP代码: 我从PHP得到这样的回答: 很明显,我想改变活跃的用户,但是有没有办法从php中做到这一点?

  • 我已经使用cp编译了我的代码 导入com。mysql。jdbc。连接 导入com。mysql。jdbc。编制的报表 导入com。mysql。jdbc。声明 导入java。io。* 导入java。sql。DriverManager 导入java。sql。SQLException 导入java。util。ArrayList; 公共类HttpHeaderParser{ 这里有一些java字符串操作。然后

  • 我有以下文件夹结构: null 当我运行Pycharm的fish.py时,它工作得非常好。但是,当我从终端运行fish.py时,我得到错误的模块。 我在终端中使用的命令:来自应用程序文件夹。 我已经研究了这里建议的解决方案:从不同的文件夹导入文件,将应用程序文件夹的路径添加到帮助中。但是,我想知道是否有其他方法可以使它工作,而不在中添加两行代码。这是因为我在/products目录中有许多脚本,不想