[英]global variable in R function
我創建了一個處理我的一些數據的函數,如下所示:
a <- "old"
test <- function (x) {
assign(x, "new", envir = .GlobalEnv)
}
test(a)
但我看不出從“舊”到“新”的變化,我猜這是一些“全局變量”,有什么建議嗎?
謝謝!
對於assign(x,value)
,x需要是變量的名稱而不是它的值,因此x應該是字符形式: assign("a","new")
,以便在函數中使用,嘗試:
test <- function (x)
{
assign(deparse(substitute(x)), "new", envir = .GlobalEnv)
}
在您的情況下,您將創建一個名為“old”的變量並為其指定“new”:
> old
[1] "new"
你可以將你的功能與sapply
功能結合起來,例如:
require (plyr)
b <- sapply (a, test)
b
old
"new"
你申請你的函數你的實際元素這樣a
載體-如romunov在他的回答中指出。
另一個例如:
a <- c("old", "oold", "ooold", "oooold")
b <- sapply (a, test)
b
old oold ooold oooold
"new" "new" "new" "new"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.