我想了解一下R语言的一个功能是如何工作的。在“R语言定义”中,每个好的R版本都会有一些说明,例如如何使用看起来像赋值但不是那么直接的方式设置向量元素:
x[3:5] <- 13:15
是以下缩写:
`*tmp*` <- x
x <- "[<-"(`*tmp*`, 3:5, value=13:15)
rm(`*tmp*`)
我不明白的是为什么要使用中间符号
*tmp*
,而不直接使用setter函数完成这件事。x <- "[<-"(x, 3:5, value=13:15)
直到现在我一直怀疑这与垃圾回收有关,但随着v4的显着更改以及文档没有更改,我现在怀疑自己是错误的。有人可以解释吗?
谢谢。
x <- \
[<-`(x, 3:5, 13:15)`,这肯定可以工作。 - Onyambutmp
,我刚刚运行了代码而没有使用tmp
。 - Onyambu