假设我有一个名为 TLT 的 data.frame,它的最后一行是:
TLT.Open TLT.Close
2010-12-14 92.4 92.14
我想添加一个名为 TLT.BarColor 的额外向量,所以它看起来像这样:
TLT.Open TLT.Close TLT.BarColor
2010-12-14 92.4 92.14 "Green"
这是一个“打印”是绿色还是红色条形日的函数。
bar_color <- function(ticker) {
require("quantmod")
x <- getSymbols(ticker, auto.assign=FALSE)
open <- x[,1]
close <- x[,2]
last_open <- tail(open, n=1)
last_close <- tail(close, n=1)
if (last_open > last_close)
{print("Red Bar")}
else if (last_open < last_close)
{print("Green Bar")}
else {print("Doji Bar")}
除了使用 print() R 函数(仅打印到控制台),您将使用什么 R 函数来发送输出以填充新向量?
super_dataframe <- cbind(TLT, apply(TLT, 1, valid_function))
示例函数在此解决方案中不起作用。但是如果函数是有效的,它的输出可以以这种方式附加。