.-
help for ^swapval^ 
.-

Swapping values of two variables --------------------------------

^swapval^ avar bvar { ^if^ exp | ^in^ list_of_obs }

Description -----------

^swapval^ interchanges the values of avar and bvar, so long as both variables are numeric or both are string.

Remarks -------

^swapval^ may be useful whenever data checking suggests that values for two variables have been interchanged. In simple cases, this calls for a few ^replace^ statements, or the use of the data editor (under Windows or Macintosh), but in other cases a single command may be useful.

^swapval^ can be applied unconditionally, in which case it is in essence

^tempname copy^ ^rename^ bvar ^`copy'^ ^rename^ avar bvar ^rename `copy'^ avar

Alternatively, it can be applied conditionally, using either ^if^ or ^in^, but not both. Note that ^in^ list_of_obs is more general than the usual ^in^ range. The list_of_obs can be any integer numlist specifying observation numbers, including numbers from ^1^ to _N or from ^-1^ to ^-^_N, provided that _N is replaced by the actual number. ^f^ and ^l^ for first and last observation are also indulged.

Examples --------

In a data set ^max^ should always be not less than ^min^. A check shows that this is not true in two observations, 42 and 666. If we suppose that this must be a data error, then it can be fixed by

. ^swapval min max in 42 666^

or

. ^swapval min max if max < min^

Author ------

Nicholas J. Cox, University of Durham, U.K. n.j.cox@@durham.ac.uk

Also see --------

On-line: help for @replace@, @edit@ (Windows or Macintosh)