Checks sets of factors to remove any that define duplicate classifications (R.W. Payne).

### No options

### Parameters

`SET1` = pointers |
First set of factors |
---|---|

`SET2` = pointers |
Second set of factors |

`DISTINCTSET` = pointers |
Saves the distinct factors |

### Description

`FDISTINCTFACTORS`

checks sets of factors to remove any that divide the data units into identical groups. The levels of the factors need not be in the same order – it is the composition of the groups that they define that is important. Also, any null groups (containing no units) are ignored.

The `SET1`

and `SET2`

parameters supply pointers containing sets of factors. `The DISTINCTSET`

parameter saves the set of distinct factors (i.e. those that all define different groupings). If only `SET1`

is set, `DISTINCTSET`

saves the set of factors from `SET1`

that are distinct from each other. Alternatively, if both `SET1`

and `SET2`

are set, `DISTINCTSET`

saves the factors in `SET1`

, plus the factors in `SET2`

that are distinct from each other and from the factors in `SET1`

. Thus, if `SET2`

is specified, it is assumed the factors in `SET1`

are already distinct from each other (so this provides a way of augmenting an already distinct set).

Options: none.

Parameters: `SET1`

, `SET2`

, `DISTINCTSET`

.

### Action with `RESTRICT`

Any restrictions are ignored.

### See also

Directives: `FACTOR`

, `SETCALCULATE`

.

Commands for: Calculations and manipulation.

### Example

CAPTION 'FDISTINCTFACTORS example'; STYLE=meta FACTOR [NVALUES=36; LEVELS=2] A,B,DA FACTOR [NVALUES=36; LEVELS=3] C,D,DB,DC,DD GENERATE A,B,C,D CALCULATE DA,DB,DC,DD = A,B,C,D FDISTINCTFACTORS !p(B,D); SET2=!p(DA,DB,DC,DD); DISTINCTSET=dfac PRINT dfac FDISTINCTFACTORS !p(A,B,C,D,DA,DB,DC,DD); DISTINCTSET=dfac PRINT dfac