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
FerhatMihoubi
dynare
Commits
c5005e60
Commit
c5005e60
authored
Jun 08, 2014
by
Stéphane Adjemian
Browse files
Added @dseries/remove method.
parent
a8242373
Changes
2
Hide whitespace changes
Inline
Side-by-side
matlab/@dseries/remove.m
0 → 100644
View file @
c5005e60
function
ts
=
remove
(
ts
,
a
)
%
--*-
-
Unitary
tests
--*--
%
Removes
a
variable
from
a
dseries
object
(
alias
for
the
pop
method
).
%
@info
:
%!
@deftypefn
{
Function
File
}
{
@var
{
ts
}
=
}
pop
(
@var
{
ts
},
@var
{
a
})
%!
@anchor
{
dseries
/
pop
}
%!
@sp
1
%!
Remove
method
for
the
dseries
class
.
Removes
a
variable
from
a
dseries
object
.
%!
@sp
2
%!
@strong
{
Inputs
}
%!
@sp
1
%!
@table
@
@var
%!
@item
ts
%!
Object
instantiated
by
@ref
{
dseries
}.
%!
@item
a
%!
String
,
name
of
the
variable
to
be
removed
.
%!
@end
table
%!
@sp
2
%!
@strong
{
Outputs
}
%!
@sp
1
%!
@table
@
@var
%!
@item
ts
%!
Object
instantiated
by
@ref
{
dseries
},
without
variable
(
@var
{
a
}).
%!
@end
table
%!
@end
deftypefn
%
@eod
:
%
Copyright
(
C
)
2014
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/>.
ts
=
pop
(
ts
,
a
);
%
@test
:
1
%
$
%
Define
a
datasets
.
%
$
A
=
rand
(
10
,
3
);
%
$
%
$
%
Define
names
%
$
A_name
=
{
'
A1
';'
A2
';'
A3
'
};
%
$
%
$
t
=
zeros
(
4
,
1
);
%
$
%
$
%
Instantiate
a
time
series
object
.
%
$
try
%
$
ts1
=
dseries
(
A
,[],
A_name
,[]);
%
$
ts2
=
remove
(
ts1
,
'
A2
'
);
%
$
t
(
1
)
=
1
;
%
$
catch
%
$
t
=
0
;
%
$
end
%
$
%
$
if
length
(
t
)
>
1
%
$
t
(
2
)
=
dyn_assert
(
ts2
.
vobs
,
2
);
%
$
t
(
3
)
=
dyn_assert
(
ts2
.
nobs
,
10
);
%
$
t
(
4
)
=
dyn_assert
(
ts2
.
data
,[
A
(
:
,
1
),
A
(
:
,
3
)],
1e-15
);
%
$
end
%
$
T
=
all
(
t
);
%
@eof
:
1
%
@test
:
2
%
$
%
Define
a
datasets
.
%
$
A
=
rand
(
10
,
3
);
%
$
%
$
%
Define
names
%
$
A_name
=
{
'
A1
';'
A2
';'
A3
'
};
%
$
%
$
t
=
zeros
(
4
,
1
);
%
$
%
$
%
Instantiate
a
time
series
object
.
%
$
try
%
$
ts1
=
dseries
(
A
,[],
A_name
,[]);
%
$
ts2
=
ts1
.
remove
(
'
A2
'
);
%
$
t
(
1
)
=
1
;
%
$
catch
%
$
t
=
0
;
%
$
end
%
$
%
$
if
length
(
t
)
>
1
%
$
t
(
2
)
=
dyn_assert
(
ts2
.
vobs
,
2
);
%
$
t
(
3
)
=
dyn_assert
(
ts2
.
nobs
,
10
);
%
$
t
(
4
)
=
dyn_assert
(
ts2
.
data
,[
A
(
:
,
1
),
A
(
:
,
3
)],
1e-15
);
%
$
end
%
$
T
=
all
(
t
);
%
@eof
:
2
\ No newline at end of file
matlab/@dseries/subsref.m
View file @
c5005e60
...
...
@@ -90,7 +90,7 @@ switch S(1).type
else
B
=
feval
(
S
(
1
).
subs
,
A
);
end
case
{'
cumsum
','
insert
','
pop
','
cumprod
'}
%
Methods
with
less
than
three
argument
.
case
{'
cumsum
','
insert
','
pop
','
cumprod
'
,'
remove
'
}
%
Methods
with
less
than
three
argument
.
if
length
(
S
)
>
1
&&
isequal
(
S
(
2
).
type
,
'
()
'
)
if
isempty
(
S
(
2
).
subs
)
B
=
feval
(
S
(
1
).
subs
,
A
);
...
...
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