Programmer Guide/Command Reference/EVAL/vvset: Difference between revisions

From STX Wiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 28: Line 28:
#c := eval vvset($#b, fill(4, 9, -3), 6, 1)
#c := eval vvset($#b, fill(4, 9, -3), 6, 1)
// -> #c = { 0 , -1 , 2 , -1 , 4 , -1 , 9 , 6 , 3 , 0 }
// -> #c = { 0 , -1 , 2 , -1 , 4 , -1 , 9 , 6 , 3 , 0 }
// reverse vector indeces
#arev := eval vvset($#a, $#a, $#a[], -1)
// -> #arev = { 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 , 0 }
</pre>
</pre>


[[Programmer_Guide/Command_Reference/EVAL#Functions|<function list>]]
[[Programmer_Guide/Command_Reference/EVAL#Functions|<function list>]]

Revision as of 08:12, 6 April 2011

Create a copy of the vector x and replace elements.


Usage 1
vvset(x , y {, o {, d, n}}})
x
source vector
y
replace value (scalar)
o
starting index, 0 <= o < nrow(x) (default=0)
d
index increment (default=1)
n
number of values to replace (default=nrow(x))
Result 1
The result r is copy of the vector x. All elements r[o+i*d] (with: i = 0..n-1) are replaced by the value y.

Usage 2
vvset(x , y {, o {, d}})
x
source vector
y
replace vector
o
starting index, 0 <= o < nrow(x) (default=0)
d
index increment (default=1)
Result 2
The result r is copy of the vector x. All elements r[o+i*d] (with: i = 0..nrow(y)-1) are replaced by the value y[i].

The function failes if an index value is out of bounds.

See also
vv, vvget, vvcat, vmcol, vmrow, vsubn, vsubc

Example:

#a := eval fill(10,0,1)
#b := eval vvset($#a, -1, 1, 2, 5) 
// -> #b = { 0 , -1 , 2 , -1 , 4 , -1 , 6 , -1 , 8 , -1 }
#c := eval vvset($#b, fill(4, 9, -3), 6, 1)
// -> #c = { 0 , -1 , 2 , -1 , 4 , -1 , 9 , 6 , 3 , 0 }
// reverse vector indeces
#arev := eval vvset($#a, $#a, $#a[], -1)
// -> #arev = { 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 , 0 }

<function list>

Navigation menu

Personal tools