R - CSV в тс для ежедневных данных - PullRequest
0 голосов
/ 06 декабря 2018

Просто начинаю с R, и мне не удается перевести мой CSV / dataframe во временную серию так, как мне нужно.Я перепробовал все соответствующие объяснения, которые смог найти.

Пример необработанных данных:

date,count
2017-01-01,92
2017-01-02,606
2017-01-03,514
2017-01-04,377
2017-01-05,285
2017-01-06,250
2017-01-07,465
2017-01-08,64

Мне нужны временные ряды, в которых каждый день, как в столбце даты выше, соответствует количеству проданных товаров в столбце подсчета.

Пример ожидаемого результата: (По крайней мере, это то, что я понял, дневной цикл должен выглядеть ... поправьте меня, если я ошибаюсь)

2017-01-01  2017-01-02  2017-01-03
92          606         514

Я попытался загрузить это в R разными способами, например:

 sold_raw.df=read.csv(file="Daily_sold_all_clients_2017_2018.csv", head=TRUE, stringsAsFactors = FALSE) 

или

df <- read.csv("sold.csv", header=TRUE, row.names="date")

И затем попытался преобразовать их в TS (также XTS, также не работал, дажехотя мне нужен ts для учебника, который я делаю)

x=ts(df)

или;

xts(df, order.by=as.Date(rownames(df),"%m/%d/%Y"))

это дает ошибку:

Error in xts(df, order.by = as.Date(rownames(df), "%m/%d/%Y")) : 
  'order.by' cannot contain 'NA', 'NaN', or 'Inf'

и:

ts.dat <- ts(data=df$count, start = 1, frequency = 365)

и:

> ts(df, order.by=as.Date(rownames(df),"%m-%d-%Y"))
Error in ts(df, order.by = as.Date(rownames(df), "%m-%d-%Y")) : 
  unused argument (order.by = as.Date(rownames(df), "%m-%d-%Y"))

Ни одна из этих строк не дала мне нужный мне вывод.Кто-нибудь может дать мне какое-нибудь указание о том, как читать в формате csv с датами и счетами и преобразовать его во временную серию?

1 Ответ

0 голосов
/ 06 декабря 2018

Похоже, что вы используете другой формат даты, отличный от того, который указан в вашем наборе данных.Попробуйте это:

xts(df, order.by=as.Date(rownames(df),"%Y-%m-%d"))

Или, используя ts:

ts.dat <- ts(df, start = 1, frequency = 365) 
row.names(ts.dat) <- rownames(df)

Надеюсь, это поможет.

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