这很好用:
library(zeallot)
c(v1, v2, v3) %<-% list(10, 20, 30)
这不:
library(zeallot)
library(future)
c(v1, v2, v3) %<-% list(10, 20, 30)
因为
future
覆盖 zeallot's
并行赋值 运算符。
The following objects are masked from ‘package:zeallot’:
%->%, %<-%
这是否意味着无法将
zeallot
与 future
一起使用?
我看到两个选项。
最后加载
zealot
,确保 %<-%
的 zealot
优先。
library(future)
library(zeallot)
c(v1, v2, v3) %<-% list(10, 20, 30)
以函数(非中缀)形式使用
%<-%
时,使用显式名称空间调用。
library(zeallot)
library(future)
zeallot::`%<-%`(c(v1, v2, v3), list(10, 20, 30))
我喜欢这个问题。 :)
您可以从这些库之一中排除某些函数并导入它们,例如:
library (zeallot, exclude = c("%->%", "%<-%"));
或:
library (future, exclude = c("%->%", "%<-%"));
然后给它们起新名字,例如:
`%<=%` = zeallot::`%<-%` ;
`%=>%` = zeallot::`%->%` ;
或:
`%<--%` = future::`%<-%` ;
`%-->%` = future::`%->%` ;
如你所愿。