.- help for ^cpr^ .- Results for all possible combinations of arguments -------------------------------------------------- ^cpr^ list1 [ ^\^ list2 [ ^\^ list3 ] ... ] [ ^, noh^eader ^nos^top ^p^ause ] ^:^ stata_cmd Description ----------- ^cpr^ repeats stata_cmd using all possible n-tuples of arguments from between one and five lists: each possible argument from one list, each possible pair of arguments from two lists, and so forth. In stata_cmd, ^@@1^ indicates the argument from list1, ^@@2^ the argument from list2, and so forth. The elements of each list must be separated by spaces. If there are n_j arguments in list j, j = 1, ..., k, the number of sets of results is the product of the k n_j. The name ^cpr^ is derived from Cartesian product. Options ------- ^noheader^ suppresses the display of the command before each repetition. ^nostop^ does not stop the repetitions if one of the repetitions results in an error. ^pause^ pauses output after each execution of stata_cmd. This may be useful, for example, under Stata for Windows when ^cpr^ is combined with ^graph^. Remarks ------- ^cpr^ could lead to a lot of output. Consider the effects on paper and patience, your own and your institution's. ^cpr^ is based on ^cp^ written for Stata 5.0. ^cp^ in Stata 6.0 is a built-in command. Like ^cp^, ^cpr^ does not understand quoted strings. Unlike ^cp^, ^cpr^ does understand numlists. Unlike ^for^, ^cpr^ does not understand varlists. A varlist will simply be passed through to stata_cmd. Examples -------- . ^cpr 2 4 6 : xtile mpg@@1 = mpg, n(@@1)^ This executes . ^xtile mpg2 = mpg, n(2)^ . ^xtile mpg4 = mpg, n(4)^ . ^xtile mpg6 = mpg, n(6)^ . ^cpr length weight mpg \ 2 4 : xtile @@1@@2 = @@1, n(@@2)^ This executes . ^xtile length2 = length, n(2)^ . ^xtile length4 = length, n(4)^ . ^xtile weight2 = weight, n(2)^ . ^xtile weight4 = weight, n(4)^ . ^xtile mpg2 = mpg, n(2)^ . ^xtile mpg4 = mpg, n(4)^ . ^cpr mpg price \ length displ weight : regress @@1 @@2^ This executes . ^regress mpg length^ . ^regress mpg weight^ . ^regress mpg displ^ . ^regress price length^ . ^regress price weight^ . ^regress price displ^ . ^cpr 1/5 \ 1/8 : mat A[@@1,@@2] = sqrt(A[@@1,@@2])^ This executes an element-by-element replacement of each element of a 5 X 8 matrix with its square root. Author ------ Nicholas J. Cox, University of Durham, U.K. n.j.cox@@durham.ac.uk Also see -------- On-line: help for @for@