Bookmark and Share

Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: st: Levelsof for more than one Variable

From   Nick Cox <>
Subject   Re: st: Levelsof for more than one Variable
Date   Mon, 21 Jan 2013 14:52:47 +0000

As a kind of meta-comment I recommend against the use of "unique" in
this context.

"Unique" means occurring once only. It's a good word, and best left to
mean that, as your school teachers may have urged. For example,
"StataCorp is a unique company". Very true (if also trite).

Naturally, some might want to start the age-old discussion of whether
usage sanctifies abuse of etymology.  But even descriptively-inclined
dictionaries don't seem to sanction the sense of this word "unique" as
meaning "distinct", which I suggest is a much better word than
"unique" for this purpose.

My guess is that the popularity of "unique" in this meaning stems
partly from Unix utilities such as -uniq-, which removes copies from a
list and leaves one and one copy of each distinct item as a result.

a a a b b c

would be reduced to

a b c

by such utilities.

Here uniqueness defines each item in the result, not each item in the
argument. My guess is that many software developers encountered such
utilities such as -uniq- in their youth and that had a greater
influence on them than their English dictionaries (if they had one) or
their English teachers (if they paid them much attention).

I have a long-term plan to persuade StataCorp of this too. See also

SJ-8-4  dm0042  . . . . . . . . . . . .  Speaking Stata: Distinct observations
        (help distinct if installed)  . . . . . .  N. J. Cox and G. M. Longton
        Q4/08   SJ 8(4):557--568
        shows how to answer questions about distinct observations
        from first principles; provides a convenience command

I can't speak authoritatively on languages other than English -- "not
even", some might think -- so not mentioning them means only that.


On Mon, Jan 21, 2013 at 2:30 PM, Maarten Buis <> wrote:
> // collect the values
> levelsof var1, locals(loc1)
> levelsof var2, locals(loc2)
> // stack the macros
> // NOTICE: no "=" sign
> local loc "`loc1' `loc2'"
> // get rid of the duplicates
> local loc : list uniq loc
> For more see: -help extended_fcn- and especially -help macrolists-
> Hope this helps,
> Maarten
> On Mon, Jan 21, 2013 at 3:02 PM, Roberto Liebscher
> <> wrote:
>> I have two variables both containing string values. I would like to get all
>> unique values (not the number of unique values) from these two variables
>> jointly.
>> For example if I enter
>> levelsof var1, locals(loc1)
>> levelsof var2, locals(loc2)
>> I obtain all unique values of var1 and all unique values of var2. But at the
>> end I would like to have one local containing only unique values in loc1 AND
>> loc2.
>> Is there anyone who can help me with this?
*   For searches and help try:

© Copyright 1996–2018 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   Site index