Удалить имена строк из списка данных?
Мой код:
library(quantmod)
library(tseries)
library(ggplot2)
companies = c("IOC.BO", "BPCL.BO", "ONGC.BO", "HINDPETRO.BO", "GAIL.BO")
stocks = list()
for(i in 1:5){
stocks[[i]] = getSymbols(companies[i], auto.assign = FALSE)
}
stocks
список фреймов данных Теперь я пытаюсь связать все $ скорректированные столбцы со всеми кадрами данных, хранящимися в stock
но для этого мне нужно удалить имена строк (кто-то, пожалуйста, скажите мне, если есть лучший способ сделать это):
for(i in 1:5)
rownames(stocks[[i]])<- NULL
но итоговые кадры данных все еще имеют имена строк, может кто-нибудь сказать мне, где я иду не так?
PS Кроме того, моей конечной целью является создание информационного кадра, содержащего только откорректированные столбцы информационных кадров в списке. stocks
для чего я это сделал:
adjusted=data.frame()
for(i in 1:5)
coln=stocks[[1]][,6]
adjusted=cbind(ajusted,coln)
adjusted
но это возвращается с поправкой в виде списка.
1 ответ
Имена строк
Что касается имен строк после запуска кода в вопросе
rownames(stocks[[1]])
## NULL
поэтому неверно, что у акций впоследствии есть названия строк.
Скорректированная серия
Для создания временного ряда скорректированных значений используйте Ad
как показано ниже.
Adjusted <- do.call("merge", lapply(stocks, Ad))
Собираем все вместе
Обратите внимание, что нам на самом деле не нужна полная обработка имен строк, и достаточно следующего. Вторая последняя строка является необязательной, поскольку ее единственное назначение - сделать имена столбцов более красивыми, а последняя строка преобразует объект xts. Adjusted
к фрейму данных и может и не понадобиться, так как вам может оказаться удобнее работать с объектом xts, чем с фреймами данных.
library(quantmod)
library(ggplot2)
stocks <- lapply(companies, getSymbols, auto.assign = FALSE)
Adjusted <- do.call("merge", lapply(stocks, Ad))
names(Adjusted) <- sub(".BO.Adjusted", "", names(Adjusted))
adjustedDF <- fortify(Adjusted)