【发布时间】:2020-05-12 07:05:28
【问题描述】:
我正在学习 R,所以感谢你的耐心。 首先是我的数据示例:
Date <- c("23-01-19", "24-01-19", "25-01-19", "30-01-19", "31-01-19" )
Open <- c("69.849998", "69.440002", "69.540001", "70.32", "69.559998")
High <- c("69.849998", "69.440002", "69.540001", "70.32", "69.559998")
Low <- c("69.849998", "69.440002", "69.540001", "70.32", "69.559998")
Close <- c("69.849998", "69.440002", "69.540001", "70.32", "69.559998")
Adj_Close <- c("69.849998", "69.440002", "69.540001", "70.32", "69.559998")
Volume <- c("0", "0", "0", "0","0")
InvescoDf <- data.frame(Date, Open, High, Low, Close, Adj_Close, Volume)
OssiamDf <- InvescoDf
mylist <- list(InvescoDf, OssiamDf)
我的问题:
我设法遍历了一个数据框列表,并在每个数据框上创建了一个新列,将其称为“返回”。
new_list <- lapply(mylist, function(x)
{
x <- mutate(x, Return = (Close / lag(Close, default = first(Close)))-1)
x
})
我的下一步是选择所有返回向量(第 8 列)并创建一个 DF:
new_Df <- data.frame(sapply(new_list, function(x) x[, 8]))
到目前为止还不错。但现在我有一个向量名称为 Return、Return1 等的 DF。 是否有可能通过类似的迭代轻松重命名向量?:NameOfTheDataFrame_Return
提前谢谢你
BR 托尼
【问题讨论】:
标签: r loops dataframe vector rename