Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Dóra Kocsis
dynare
Commits
ccaefc40
Commit
ccaefc40
authored
Apr 19, 2013
by
Stéphane Adjemian
Browse files
Added @dynSeries/lag method.
parent
459a93d2
Changes
2
Hide whitespace changes
Inline
Side-by-side
matlab/@dynSeries/lag.m
0 → 100644
View file @
ccaefc40
function
us
=
lag
(
ts
,
p
)
%
@info
:
%!
@deftypefn
{
Function
File
}
{
@var
{
us
}
=
}
lag
(
@var
{
ts
})
%!
@anchor
{
lag
}
%!
@sp
1
%!
Computes
lagged
time
series
.
%!
@sp
2
%!
@strong
{
Inputs
}
%!
@sp
1
%!
@table
@var
%!
@item
ts
%!
Dynare
time
series
object
,
instantiated
by
@ref
{
dynSeries
}
%!
@end
table
%!
@sp
2
%!
@strong
{
Outputs
}
%!
@sp
1
%!
@table
@var
%!
@item
us
%!
Dynare
time
series
object
with
transformed
data
field
.
%!
@end
table
%!
@end
deftypefn
%
@eod
:
%
Copyright
(
C
)
2013
Dynare
Team
%
%
This
file
is
part
of
Dynare
.
%
%
Dynare
is
free
software
:
you
can
redistribute
it
and
/
or
modify
%
it
under
the
terms
of
the
GNU
General
Public
License
as
published
by
%
the
Free
Software
Foundation
,
either
version
3
of
the
License
,
or
%
(
at
your
option
)
any
later
version
.
%
%
Dynare
is
distributed
in
the
hope
that
it
will
be
useful
,
%
but
WITHOUT
ANY
WARRANTY
;
without
even
the
implied
warranty
of
%
MERCHANTABILITY
or
FITNESS
FOR
A
PARTICULAR
PURPOSE
.
See
the
%
GNU
General
Public
License
for
more
details
.
%
%
You
should
have
received
a
copy
of
the
GNU
General
Public
License
%
along
with
Dynare
.
If
not
,
see
<
http
:
//www.gnu.org/licenses/>.
%
Set
default
number
of
lags
if
nargin
<
2
p
=
1
;
end
%
Copy
of
ts
dynSeries
object
us
=
ts
;
%
Update
data
member
us
.
data
=
[
NaN
(
p
,
ts
.
vobs
)
;
ts
.
data
(
1
:
end
-
p
,
:
)];
for
i
=
1
:
ts
.
vobs
us
.
name
(
i
)
=
{[
'
lag
(
'
ts
.
name
{
i
}
','
int2str
(
p
)
')'
]
}
;
us
.
tex
(
i
)
=
{[
ts
.
tex
{
i
}
'
_
{
-
'
int2str
(
p
)
'}'
]};
end
%
@test
:
1
%
$
t
=
zeros
(
4
,
1
);
%
$
%
$
try
%
$
data
=
transpose
(
0
:
1
:
50
);
%
$
ts
=
dynSeries
(
data
,
'
1950
Q1
'
);
%
$
a
=
ts
.
lag
;
%
$
b
=
ts
.
lag
.
lag
;
%
$
c
=
lag
(
ts
,
2
);
%
$
t
(
1
)
=
1
;
%
$
catch
%
$
t
=
0
;
%
$
end
%
$
%
$
if
length
(
t
)
>
1
%
$
DATA
=
[
NaN
(
1
,
ts
.
vobs
);
transpose
(
0
:
1
:
49
)];
%
$
t
(
2
)
=
dyn_assert
(
a
.
data
,
DATA
,
1e-15
);
%
$
DATA
=
[
NaN
(
2
,
ts
.
vobs
)
;
transpose
(
0
:
1
:
48
)];
%
$
t
(
3
)
=
dyn_assert
(
b
.
data
,
DATA
,
1e-15
);
%
$
t
(
4
)
=
dyn_assert
(
b
.
data
,
c
.
data
,
1e-15
);
%
$
end
%
$
%
$
T
=
all
(
t
);
%
@eof
:
1
b
\ No newline at end of file
matlab/@dynSeries/subsref.m
View file @
ccaefc40
...
...
@@ -66,7 +66,7 @@ switch S(1).type
switch
S
(
1
).
subs
case
{'
data
','
nobs
','
vobs
','
name
','
tex
','
freq
','
time
','
init
'}
%
Public
members
.
B
=
builtin
(
'
subsref
'
,
A
,
S
(
1
));
case
{'
log
','
exp
','
ygrowth
','
qgrowth
','
ydiff
','
qdiff
'
}
%
Give
"dot access"
to
public
methods
.
case
{'
log
','
exp
','
ygrowth
','
qgrowth
','
ydiff
','
qdiff
'
,'
lag
'}
%
Give
"dot access"
to
public
methods
.
B
=
feval
(
S
(
1
).
subs
,
A
);
case
{'
save
'}
%
Save
dynSeries
object
on
disk
(
default
is
a
csv
file
).
B
=
NaN
;
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment