【发布时间】:2017-11-06 17:53:39
【问题描述】:
这可能是一个快速修复!我正在尝试将我的向量的第 i 个位置放入我的数据框列名中。我正在尝试使用 paste0 输入第 i 个数字。
sma <- 2:20
> sma
[1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
# Place i number from sma vector to data frame column name
spx.sma <- df$close.sma.paste0("n", sma[i])
列名应为:
"close.sma.n2"
如果我打印
paste0("n", sma[i])
我得到:
> paste0("n", sma[i])
[1] "n2"
所以如果我将它粘贴到我的数据框列名中,那么它应该是:
close.sma.n2
实现此目的的正确方法是什么?
我实现了错误:
> spx.sma <- df$close.sma.paste0(".n", sma[i])
Error: attempt to apply non-function
【问题讨论】:
-
你需要使用这种格式,而不是
$版本...df[,paste0("close.sma.n", sma[i])]