Programmer Guide/Command Reference/EVAL/vvget: Difference between revisions
From STX Wiki
< Programmer Guide | Command Reference | EVAL
Jump to navigationJump to search
m (1 revision: Initial import) |
No edit summary |
||
(7 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{DISPLAYTITLE:{{SUBPAGENAME}}}} | {{DISPLAYTITLE:{{SUBPAGENAME}}}} | ||
===== | Extract elements from a vector. | ||
;Usage: <code><var>vvget(x</var> {, <var>o</var> {, <var>d</var> {,<var>n</var> }}})</code> | |||
:;<var>x</var>: the source vector, l<sub>x</sub>=nrow(''x'') must be greater/equal 1 | |||
:;<var>o</var>: the first element to be extracted, 0 ≤ ''o'' < l<sub>x</sub> (default='''0''') | |||
:;<var>d</var>: the index increment (default='''1''') | |||
:;<var>n</var>: the number of elements to extract, ''n''>0 (default='''l<sub>x</sub>''') | |||
;Result: A numerical object ''r'' (scalar or vector) with ''n'' elements | |||
::<code>''r''<sub>i</sub> = x<sub>''o''+i*''d''</sub></code>; with i=0..''n''-1 | |||
:Note: For all i, the source index ''o''+i*''d'' must be in the range 0 to l<sub>x</sub>-1, otherwise the function fails. | |||
;See also: [[../vv|vv]], [[../vvset|vvset]], [[../vvcat|vvcat]], [[../vmcol|vmcol]], [[../vmrow|vmrow]], [[../vsubn|vsubn]], [[../vsubc|vsubc]] | |||
[[../#Functions|<function list>]] | |||
Example: | |||
#a := eval vv(1,2,4,8,16,32) | |||
#b := eval vvget($#a, 0, 2, 3) | |||
// → #b = { 1 , 4 , 16 } | |||
#c := eval vvget($#a, 5, -1, 4) | |||
// → #c = { 32, 16, 8, 4 } |
Latest revision as of 19:04, 21 April 2011
Extract elements from a vector.
- Usage
vvget(x {, o {, d {,n }}})
- x
- the source vector, lx=nrow(x) must be greater/equal 1
- o
- the first element to be extracted, 0 ≤ o < lx (default=0)
- d
- the index increment (default=1)
- n
- the number of elements to extract, n>0 (default=lx)
- Result
- A numerical object r (scalar or vector) with n elements
ri = xo+i*d
; with i=0..n-1
- Note: For all i, the source index o+i*d must be in the range 0 to lx-1, otherwise the function fails.
- See also
- vv, vvset, vvcat, vmcol, vmrow, vsubn, vsubc
Example:
#a := eval vv(1,2,4,8,16,32) #b := eval vvget($#a, 0, 2, 3) // → #b = { 1 , 4 , 16 } #c := eval vvget($#a, 5, -1, 4) // → #c = { 32, 16, 8, 4 }