在 SO 的帮助下,我现在可以重命名数据框中的所有变量,除了选定的子集。我目前正在使用这种方法,请参阅打击(感谢florel)。
我想编写一个函数,我可以在其中定义 1)我的数据,2)变量向量和 3)我想在函数中未选择的变量中添加什么前缀(请参阅下面的尝试)。我错误地认为这很容易,但我很难让该功能正常工作。
这是我编写函数的尝试,这显然不起作用。另外,如果有人推荐一个站点或一些文本,我可以阅读以更好地理解如何编写函数。
baRadd <- function(df, vector, suffix){names(df) <-
ifelse(names(df) %in% vector,names(df),
paste(suffix, names(df), sep = ".")) }
data(mtcars)
temp.mtcars <- mtcars
baRadd(temp.mtcars, c("mpg", "cyl", "disp"), "baR")
初始函数形式 florel
data(mtcars)
# head(mtcars)
temp.mtcars <- mtcars
names(temp.mtcars) <- ifelse(names(mtcars) %in% c("mpg", "cyl", "disp"),
names(mtcars),
paste("baR", names(mtcars), sep = "."))
str(temp.mtcars)
'data.frame': 32 obs. of 11 variables:
$ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
$ cyl : num 6 6 4 6 8 6 8 4 4 6 ...
$ disp : num 160 160 108 258 360 ...
$ baR.hp : num 110 110 93 110 175 105 245 62 95 123 ...
$ baR.drat: num 3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...
$ baR.wt : num 2.62 2.88 2.32 3.21 3.44 ...
$ baR.qsec: num 16.5 17 18.6 19.4 17 ...
$ baR.vs : num 0 0 1 1 0 1 0 1 1 1 ...
$ baR.am : num 1 1 1 0 0 0 0 0 0 0 ...
$ baR.gear: num 4 4 4 3 3 3 3 4 4 4 ...
$ baR.carb: num 4 4 1 1 2 1 4 2 2 4 ...