【发布时间】:2016-04-27 09:54:34
【问题描述】:
我正在尝试编写一个将新行添加到现有数据帧的 R 函数。
这是我的代码(这里是 R 新手):
qRows <- data.frame( RowQuery = character(0), "BackTest P&L" = character(0), stringsAsFactors=FALSE)
# add row to dataFrame
qRows[nrow(qRows) + 1, ] <- c("sp500(vwpc) | abc(30) | qcume", "12%")
#define function to add new row to dataFrame
Q <- function(data, y){
data[nrow(data) + 1, ] <- c(y,"88")
}
# run new function
Q(qRows, "newQuery")
#examine output: but no new row added
qRows
代码运行没有错误,但没有添加新行。
【问题讨论】:
-
您可以在函数末尾添加
return(data) -
是的,这行得通。但后来我不得不写:qRows = Q(qRows, "xyz")。我希望避免这种情况,但在网上没有找到任何可以让我知道如何做到这一点的线索。
标签: r functional-programming dataframe