R “:”的目的是什么:&引用;为什么它有用?

R “:”的目的是什么:&引用;为什么它有用?,r,R,在R中使用:的目的是什么?我注意到在一些指南中,他们使用:来指示函数来自哪个包。这是让事情运行得更快,还是仅仅表明需要哪些包 另外,《代码》还有其他用途吗 ggplot2软件包简介中的代码段: grid::polygonGrob( coords$x, coords$y, default.units = "native", gp = grid::gpar( col = first_row$colour, fill = scale

在R中使用
的目的是什么?我注意到在一些指南中,他们使用
来指示函数来自哪个包。这是让事情运行得更快,还是仅仅表明需要哪些包

另外,《代码》还有其他用途吗

ggplot2软件包简介中的代码段:

grid::polygonGrob(
      coords$x, coords$y, 
      default.units = "native",
      gp = grid::gpar(
        col = first_row$colour,
        fill = scales::alpha(first_row$fill, first_row$alpha),
        lwd = first_row$size * .pt,
        lty = first_row$linetype
      )

在任何给定的时间,都会根据加载包的顺序建立名称空间的搜索路径。有时,加载一个包会“屏蔽”一个与工作区中已经存在的函数同名的函数。这通常在加载新包时宣布,但用户可能会忽略这一点。使用“::”可确保使用正确的环境从所需的软件包访问特定功能。尝试使用第二个库调用重新加载函数将失败,因为library()函数检查库是否已加载,如果在搜索路径中,则不执行任何操作。

在任何给定时间,都会根据加载包的顺序建立名称空间的搜索路径。有时,加载一个包会“屏蔽”一个与工作区中已经存在的函数同名的函数。这通常在加载新包时宣布,但用户可能会忽略这一点。使用“::”可确保使用正确的环境从所需的软件包访问特定功能。尝试使用第二个库调用重新加载函数将失败,因为library()函数检查库是否已加载,如果在搜索路径中,则不执行任何操作。

如果两个包的函数名称相同,则使用
pkg::fn
而不是
library(pkg);fn
更安全(因为它避免了混淆和名称冲突)。这里有一个例子:我不认为问题是相同的,也没有任何答案实际上直接回答这个问题。如果两个包的函数名称相同,那么使用
pkg::fn
而不是
library(pkg);fn
更安全(因为它避免了混淆和名称冲突)。这里有一个例子:我不认为这个问题是相同的,也没有任何答案实际上直接回答这个问题。