R: преобразование ежедневных данных в недельные данные - PullRequest
0 голосов
/ 11 марта 2019

При использовании to.weekly для преобразования следующих ежедневных данных в недельную частоту я сталкиваюсь с ошибкой в ​​столбцах 5 и 6: Исходные дневные данные: столбец 5: скорректированная цена и столбец 6: объем преобразуется в недельные данные: столбец 5: объем (еженедельно) и столбец 6: скорректированная цена (в названии), но содержит данные объема

data.AMZN<-read.table(text=
          "AMZN.Open AMZN.High AMZN.Low AMZN.Close AMZN.Adjusted AMZN.Volume
2011-01-03    181.37    186.00   181.21     184.22        184.22     5331400
2011-01-04    186.15    187.70   183.78     185.01        185.01     5031800
2011-01-05    184.10    187.45   184.07     187.42        187.42     3418800
2011-01-06    186.50    187.41   185.25     185.86        185.86     3179700
2011-01-07    187.88    188.45   183.74     185.49        185.49     5221700")

data.weekly<-read.table(text=
           "wk.Open wk.High wk.Low wk.Close wk.Volume wk.Adjusted
2010-12-31  181.96  182.30 179.51   180.00   3451900     3451900
2011-01-07  181.37  188.45 181.21   185.49  22183400     5221700
2011-01-14  185.04  188.94 182.51   188.75  15899000     3662800
2013-12-31  399.41  399.92 392.45   398.79   4483600     1996500")

1 Ответ

0 голосов
/ 12 марта 2019

Мне не очень понятно, что вы делали между data.AMZN и data.weekly.Обратите внимание, что в ваших данных даты не являются переменными, они являются именами строк.Поэтому первое, что нужно сделать, это переместить имена в столбец.

Я бы посоветовал сделать с вашими данными следующее:

library(tidyverse)
library(lubridate)
data.weekly2 = data.AMZN %>%
  rownames_to_column(., "date")%>% # as the name suggests
  mutate(date = ymd(date)) %>% # convert characters to date
  mutate( week_start = floor_date(date, "week")) %>% # creates column with week start date
  group_by(week_start) %>% # now yo can do with data what you need i.e.:
  summarise(AMZN.Volume = sum(AMZN.Volume))

Всего наилучшего, M

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...