R .Library和libpaths()返回不同的结果

时间:2019-10-21 04:20:18

标签: r system

libpaths()返回有效结果:

>>> d             
{'eggs': [[20, 30], [40, 23], [10, 24]], 'apple': [[2, 22], [42, 3]]}

但是.Library返回的结果无效:

"D:/R/R-3.3.3/library"

这是预期的吗?

2 个答案:

答案 0 :(得分:1)

使用Mac,我还会得到两种不同的路径:

.Library
# [1] "/Library/Frameworks/R.framework/Resources/library"

.libPaths()
# [1] "/Library/Frameworks/R.framework/Versions/3.6/Resources/library"

文档中关于.Library(强调我的意思)的说法是这样的:

  

.Library是一个字符串,提供了默认库(R_HOME的“ library”子目录)的位置。

关于.libPaths()(重点是我):

  

.libPaths用于获取或设置 R知道的库树(因此在查找软件包时使用)。

实际上,两个路径都通过不同的路径指向同一目录,因为第一个路径中的Resources是一个别名,指向第二个路径中的同一Resources。主要区别在于第二个路径中的Versions包含用于不同版本的多个目录(所谓的“ R知道的库树”)。 3.6版目前是我的默认库,这就是.Library也指向它的原因。我认为Windows同样适用。

答案 1 :(得分:0)

它们应该是相同的

但是在Windows中,您不能直接使用.Library的值来定位文件夹。

但是当我使用libpaths和.Library创建文件夹时,结果位于同一文件夹中

因为我认为这很有用,所以我将自己的问题的答案发布在这里。