2016-08-19 2 views
0

一段先:私はこの時系列にローリング予測をしたいと思っ 整頓私はそうのように、約100日間、半時間ごとの観測値の時系列を持って予測

> df 
# A tibble: 4,704 x 3 
    city   datetime orders 
    <chr>    <time> <dbl> 
1 Wien 2016-05-12 00:00:00  1 
2 Wien 2016-05-12 00:30:00  4 
3 Wien 2016-05-12 01:00:00  2 
4 Wien 2016-05-12 01:30:00  0 
5 Wien 2016-05-12 02:00:00  5 
6 Wien 2016-05-12 02:30:00  10 
7 Wien 2016-05-12 03:00:00  11 
8 Wien 2016-05-12 03:30:00  22 
9 Wien 2016-05-12 04:00:00  4 
10 Wien 2016-05-12 04:30:00  2 
# ... with 4,694 more rows 

は - 推定最初のn日間分のデータをモデル化し、次にn + 1番目を予測します。これは簡単に using for-loopsですが、私はこれをきちんとした方法で試してみると思いました。だから data_frameを作成し、最初の列として終了日を、data_frameにdfからend-dateまでのデータをすべて含むデータフレームを作成したい場合は、 purrr::map()と友人を使用して反復処理を行うことができます。このネストされたdata_frameを作成するにはどうすればよいですか?

+0

申し訳ありませんが、問題とは何ですか?おそらく[再現可能な例?](http://stackoverflow.com/questions/5963269)と期待される出力を提供します。 – zx8754

+0

このネストされたdata_frameを作成する方法を教えてください。 – RoyalTS

+0

'tibble :: tibble'を使ってデータフレームを作成することができます。それは簡単にリストの列を作成または追加することができます。私はあなたが探しているネストされたデータフレームだと思います。 – RobertMc

答えて

1
df <- read.table(text="city   datetime orders 
Wien '2016-05-12 00:00:00'  1 
Wien '2016-05-12 01:00:00'  2 
Wien '2016-05-12 02:00:00'  5 
Wien '2016-05-12 03:00:00'  11 
Wien '2016-05-12 03:30:00'  22 
Wien '2016-05-12 04:00:00'  4 
Wien '2016-05-12 04:30:00'  2",header=T,stringsAsFactors=F) 

df2 <- read.table(text="end 
'2016-05-12 00:30:00' 
'2016-05-12 01:30:00' 
'2016-05-12 02:30:00'",header=T,stringsAsFactors=F) 

df2 <- df2 %>% mutate(df = map(end,~df %>% dplyr::filter(datetime <.x))) 
str(df2) 
# 'data.frame': 3 obs. of 2 variables: 
# $ end: chr "2016-05-12 00:30:00" "2016-05-12 01:30:00" "2016-05-12 02:30:00" 
# $ df :List of 3 
# ..$ :'data.frame': 1 obs. of 3 variables: 
# .. ..$ city : chr "Wien" 
# .. ..$ datetime: chr "2016-05-12 00:00:00" 
# .. ..$ orders : int 1 
# ..$ :'data.frame': 3 obs. of 3 variables: 
# .. ..$ city : chr "Wien" "Wien" "Wien" 
# .. ..$ datetime: chr "2016-05-12 00:00:00" "2016-05-12 00:30:00" "2016-05-12 01:00:00" 
# .. ..$ orders : int 1 4 2 
# ..$ :'data.frame': 5 obs. of 3 variables: 
# .. ..$ city : chr "Wien" "Wien" "Wien" "Wien" ... 
# .. ..$ datetime: chr "2016-05-12 00:00:00" "2016-05-12 00:30:00" "2016-05-12 01:00:00" "2016-05-12 01:30:00" ... 
# .. ..$ orders : int 1 4 2 0 5 
関連する問題