【问题标题】:Adding Function Calculated Column to List of Data Frames将函数计算列添加到数据框列表
【发布时间】:2016-04-28 03:53:24
【问题描述】:

我通过使用quantmod 包的循环开始了我的R 学习。本质上,我正在循环一个股票符号向量以从 Yahoo 下载数据的 csv,然后应用 SMA(sma10 <- SMA(data[c('Adj.Close')],n=10) 函数向数据添加一列,最后将数据附加到先前运行的股票中,创建一个非常大的数据框。

我认为这是非常低效的,并且最近发现创建一个数据框列表,我相信这会更有效率。但是我很难理解如何将计算出的 SMA 列添加到列表中每个数据帧的每一行。我认为它需要使用 lapply 或类似的 apply 函数之一,但我就是想不通。

【问题讨论】:

    标签: r dataframe quantmod


    【解决方案1】:

    我无法正确理解您的问题。如果要向列表中的所有数据框添加一列,可以这样做

    List <- lapply(List,function(x) x$sma <- sma10;return(x))
    

    一个可重复的例子会有所帮助

    【讨论】:

    • 对于我不清楚的问题,我深表歉意。我尽量避免问它,主要是因为我想不出最好的表达方式,但你设法掌握了主要思想。唯一的区别是我想将此作为列添加到现有列表中,但我相信我可以使用 cbind 来做到这一点。谢谢!
    猜你喜欢
    • 2017-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-08
    • 1970-01-01
    • 2019-06-23
    相关资源
    最近更新 更多