Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: st: Levelsof for more than one Variable
From
Roberto Liebscher <[email protected]>
To
[email protected]
Subject
Re: st: Levelsof for more than one Variable
Date
Mon, 21 Jan 2013 17:51:09 +0100
This perfectly did the Job. Thank you very much, Nick!
--
Roberto Liebscher
Catholic University of Eichstaett-Ingolstadt
Department of Business Administration
Chair of Banking and Finance
Auf der Schanz 49
D-85049 Ingolstadt
Am 21.01.2013 17:34, schrieb Nick Cox:
I think you will need to use compound double quotes.
Compare the results of
sysuse auto, clear
levelsof make in 1/10, local(levels)
di "`levels'"
di `"`levels'"'
Nick
On Mon, Jan 21, 2013 at 4:22 PM, Roberto Liebscher
<[email protected]> wrote:
Thanks Maarten for the kind help. However I still haven't managed to get the
code working.
Like you said I typed
levelsof var1, local(loc1)
levelsof var2, local(loc2)
// stack the macros
// NOTICE: no "=" sign
local loc "`loc1' `loc2'"
// get rid of the duplicates
local loc : list uniq loc
But when I type
display "`loc'"
to get the final list an error message is prompted saying
`ABN not found
r(111);
where ABN is part of the first element of loc1 ("ABN Amro Bank"). Is it a
problem that my elements in the list contain blank spaces? Is there a way
around? I already tried the same code with the blank space being replaced by
"_" (using subinstr). Following this another error message pops up saying
"`unknown function ABN_AMRO_Bank_N.V."' `"BNP_Paribas"'" . I do not know
what is wrong here. Any help is highly appreciated.
Thanks,
Roberto
--
Roberto Liebscher
Catholic University of Eichstaett-Ingolstadt
Department of Business Administration
Chair of Banking and Finance
Auf der Schanz 49
D-85049 Ingolstadt
Germany
Am 21.01.2013 15:52, schrieb Nick Cox:
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.
Thus
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.
Nick
On Mon, Jan 21, 2013 at 2:30 PM, Maarten Buis <[email protected]>
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
<[email protected]> 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:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/faqs/resources/statalist-faq/
* http://www.ats.ucla.edu/stat/stata/
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/faqs/resources/statalist-faq/
* http://www.ats.ucla.edu/stat/stata/
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/faqs/resources/statalist-faq/
* http://www.ats.ucla.edu/stat/stata/
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/faqs/resources/statalist-faq/
* http://www.ats.ucla.edu/stat/stata/