Skip to contents

Defaults to a univariate local-level model when matrices are omitted.

Usage

morie_kalman_filter(
  x,
  transition = NULL,
  H = NULL,
  Q = NULL,
  R = NULL,
  x0 = NULL,
  P0 = NULL
)

Arguments

x

Numeric vector or matrix of observations.

transition

Transition matrix (default identity).

H

Observation matrix (default identity).

Q

State-innovation covariance (default sigma^2 I).

R

Observation covariance (default sigma^2 I).

x0

Initial state mean.

P0

Initial state covariance.

Value

Named list with \(state, state_cov, innovations, innovation_variance, loglik, n, method\).

Examples

set.seed(1)
morie_kalman_filter(x = rnorm(50))
#> $state
#>               [,1]
#>  [1,] -0.626453811
#>  [2,] -0.086389115
#>  [3,] -0.554663793
#>  [4,]  0.776254286
#>  [5,]  0.500083714
#>  [6,] -0.316090847
#>  [7,]  0.180514290
#>  [8,]  0.525260342
#>  [9,]  0.556484046
#> [10,]  0.023817580
#> [11,]  0.943429654
#> [12,]  0.601294432
#> [13,] -0.154273758
#> [14,] -1.427687137
#> [15,]  0.149917581
#> [16,]  0.029492923
#> [17,]  0.001259161
#> [18,]  0.583803815
#> [19,]  0.730535825
#> [20,]  0.646091058
#> [21,]  0.814744075
#> [22,]  0.794591362
#> [23,]  0.349590587
#> [24,] -1.095955241
#> [25,] -0.035544273
#> [26,] -0.048266173
#> [27,] -0.114722956
#> [28,] -0.952795232
#> [29,] -0.659448380
#> [30,]  0.006415222
#> [31,]  0.842160539
#> [32,]  0.258150393
#> [33,]  0.338198908
#> [34,]  0.095927144
#> [35,] -0.814428702
#> [36,] -0.567564828
#> [37,] -0.460475066
#> [38,] -0.212543520
#> [39,]  0.598668668
#> [40,]  0.700339635
#> [41,]  0.165824763
#> [42,] -0.093246707
#> [43,]  0.395129982
#> [44,]  0.494963000
#> [45,] -0.236615386
#> [46,] -0.527635089
#> [47,]  0.023785374
#> [48,]  0.484064673
#> [49,]  0.115462475
#> [50,]  0.588657264
#> 
#> $state_cov
#> , , 1
#> 
#>            [,1]
#>  [1,] 0.6717742
#>  [2,] 0.4478497
#>  [3,] 0.4198592
#>  [4,] 0.4158605
#>  [5,] 0.4152789
#>  [6,] 0.4151941
#>  [7,] 0.4151817
#>  [8,] 0.4151799
#>  [9,] 0.4151796
#> [10,] 0.4151796
#> [11,] 0.4151796
#> [12,] 0.4151796
#> [13,] 0.4151796
#> [14,] 0.4151796
#> [15,] 0.4151796
#> [16,] 0.4151796
#> [17,] 0.4151796
#> [18,] 0.4151796
#> [19,] 0.4151796
#> [20,] 0.4151796
#> [21,] 0.4151796
#> [22,] 0.4151796
#> [23,] 0.4151796
#> [24,] 0.4151796
#> [25,] 0.4151796
#> [26,] 0.4151796
#> [27,] 0.4151796
#> [28,] 0.4151796
#> [29,] 0.4151796
#> [30,] 0.4151796
#> [31,] 0.4151796
#> [32,] 0.4151796
#> [33,] 0.4151796
#> [34,] 0.4151796
#> [35,] 0.4151796
#> [36,] 0.4151796
#> [37,] 0.4151796
#> [38,] 0.4151796
#> [39,] 0.4151796
#> [40,] 0.4151796
#> [41,] 0.4151796
#> [42,] 0.4151796
#> [43,] 0.4151796
#> [44,] 0.4151796
#> [45,] 0.4151796
#> [46,] 0.4151796
#> [47,] 0.4151796
#> [48,] 0.4151796
#> [49,] 0.4151796
#> [50,] 0.4151796
#> 
#> 
#> $innovations
#>              [,1]
#>  [1,]  0.00000000
#>  [2,]  0.81009713
#>  [3,] -0.74923950
#>  [4,]  2.14994459
#>  [5,] -0.44674651
#>  [6,] -1.32055210
#>  [7,]  0.80351990
#>  [8,]  0.55781042
#>  [9,]  0.05052101
#> [10,] -0.86187243
#> [11,]  1.48796359
#> [12,] -0.55358642
#> [13,] -1.22253501
#> [14,] -2.06042613
#> [15,]  2.55261806
#> [16,] -0.19485119
#> [17,] -0.04568319
#> [18,]  0.94257705
#> [19,]  0.23741738
#> [20,] -0.13663450
#> [21,]  0.27288631
#> [22,] -0.03260777
#> [23,] -0.72002638
#> [24,] -2.33894228
#> [25,]  1.71578099
#> [26,] -0.02058447
#> [27,] -0.10752933
#> [28,] -1.35602943
#> [29,]  0.47464518
#> [30,]  1.07738994
#> [31,]  1.35226433
#> [32,] -0.94494827
#> [33,]  0.12952122
#> [34,] -0.39200395
#> [35,] -1.47298670
#> [36,]  0.39943414
#> [37,]  0.17327487
#> [38,]  0.40116167
#> [39,]  1.31256889
#> [40,]  0.16450708
#> [41,] -0.86486323
#> [42,] -0.41918644
#> [43,]  0.79021008
#> [44,]  0.16153322
#> [45,] -1.18371869
#> [46,] -0.47087977
#> [47,]  0.89221705
#> [48,]  0.74474755
#> [49,] -0.59641089
#> [50,]  0.76564525
#> 
#> $innovation_variance
#> , , 1
#> 
#>               [,1]
#>  [1,] 1.000001e+06
#>  [2,] 2.015324e+00
#>  [3,] 1.791399e+00
#>  [4,] 1.763408e+00
#>  [5,] 1.759410e+00
#>  [6,] 1.758828e+00
#>  [7,] 1.758743e+00
#>  [8,] 1.758731e+00
#>  [9,] 1.758729e+00
#> [10,] 1.758729e+00
#> [11,] 1.758729e+00
#> [12,] 1.758729e+00
#> [13,] 1.758729e+00
#> [14,] 1.758729e+00
#> [15,] 1.758729e+00
#> [16,] 1.758729e+00
#> [17,] 1.758729e+00
#> [18,] 1.758729e+00
#> [19,] 1.758729e+00
#> [20,] 1.758729e+00
#> [21,] 1.758729e+00
#> [22,] 1.758729e+00
#> [23,] 1.758729e+00
#> [24,] 1.758729e+00
#> [25,] 1.758729e+00
#> [26,] 1.758729e+00
#> [27,] 1.758729e+00
#> [28,] 1.758729e+00
#> [29,] 1.758729e+00
#> [30,] 1.758729e+00
#> [31,] 1.758729e+00
#> [32,] 1.758729e+00
#> [33,] 1.758729e+00
#> [34,] 1.758729e+00
#> [35,] 1.758729e+00
#> [36,] 1.758729e+00
#> [37,] 1.758729e+00
#> [38,] 1.758729e+00
#> [39,] 1.758729e+00
#> [40,] 1.758729e+00
#> [41,] 1.758729e+00
#> [42,] 1.758729e+00
#> [43,] 1.758729e+00
#> [44,] 1.758729e+00
#> [45,] 1.758729e+00
#> [46,] 1.758729e+00
#> [47,] 1.758729e+00
#> [48,] 1.758729e+00
#> [49,] 1.758729e+00
#> [50,] 1.758729e+00
#> 
#> 
#> $loglik
#> [1] -80.99685
#> 
#> $n
#> [1] 50
#> 
#> $method
#> [1] "Linear Gaussian Kalman filter (base R)"
#>