2016-04-28 9 views
-1

Ich habe meine R-Lernfunktion gestartet, indem ich eine Schleife mit dem quantmod-Paket verwendet habe. Im Wesentlichen durchlaufe ich einen Vektor von Aktiensymbolen, um einen CSV von Daten von Yahoo herunterzuladen, und wende dann die SMA (sma10 <- SMA(data[c('Adj.Close')],n=10) Funktion an, um eine Spalte zu den Daten hinzuzufügen, bevor die Daten schließlich an die zuvor gelaufenen Aktien angehängt werden großer DatenrahmenFunktion berechnete Spalte zur Liste der Datenrahmen hinzufügen

Ich glaube, das ist extrem ineffizient, und vor kurzem habe ich eine Liste von Datenrahmen entdeckt, die meiner Meinung nach viel effizienter sein wird, aber ich habe Mühe zu verstehen, wie man das Hinzufügen einer berechneten SMA repliziert Spalte zu jeder Zeile, von jedem Datenframe in meiner Liste. Ich denke, dass es die Verwendung von lapply erfordert, oder eine der ähnlichen Funktionen anwenden, aber ich kann es einfach nicht herausfinden.

Antwort

0

Ich konnte Ihr Problem nicht richtig verstehen Wenn Sie allen Daten eine Spalte hinzufügen möchten in einer Liste Rahmen, können Sie diese

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

tun Ein reproduzierbares Beispiel

+0

Ich entschuldige mich für meine unklare Frage helfen. Ich habe versucht, es zu vermeiden, vor allem, weil ich nicht den besten Weg fand, es zu formulieren, aber Sie haben es geschafft, die Hauptidee zu verstehen. Der einzige Unterschied war, dass ich dies als eine Spalte zu der bestehenden Liste hinzufügen wollte, aber ich glaube, ich kann 'cbind' verwenden, um das zu tun. Vielen Dank! – Boone

Verwandte Themen