Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down on April 23, and its replacement, statalist.org is already up and running.


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

Re: st: reshaping + info from label


From   Nick Cox <njcoxstata@gmail.com>
To   statalist@hsphsun2.harvard.edu
Subject   Re: st: reshaping + info from label
Date   Tue, 25 Oct 2011 02:20:56 +0100

-whatever- in this example is created as a numeric variable with value
labels, so you would need to -decode- it before you could apply
-split-.

Nick

On Tue, Oct 25, 2011 at 1:59 AM, Nick Cox <njcoxstata@gmail.com> wrote:
> That made it clearer. You can do this
>
> clear
> input date str1 variable1ab  str1 variable2cd
> 1      q                         w
> 2      e                         r
> end
> label var variable1ab "A B"
> label var variable2cd "C D"
> save aroratest
> longshape variable*, i(date) j(whatever)
>
> . l
>
>     +-----------------------------------+
>     | date   whatever     _whatever   y |
>     |-----------------------------------|
>  1. |    1        A B   variable1ab   q |
>  2. |    1        C D   variable2cd   w |
>  3. |    2        A B   variable1ab   e |
>  4. |    2        C D   variable2cd   r |
>     +-----------------------------------+
>
> It then sounds like a case for -split- on -whatever-.
>
> The key to this solution was posted fairly recently, -longshape- from SSC.
>
> -ds- and -findname- find variable names, but string values within the
> data are not where it looks. I still see no connection with this
> problem, despite being very familiar with both commands, but if
> -longshape- helps with a solution, I guess that is immaterial.
>
> Nick
>
>
> On Tue, Oct 25, 2011 at 1:46 AM, Abhimanyu Arora
> <abhimanyu.arora1987@gmail.com> wrote:
>
>> Thanks Nick, let me pls elaborate the problem.
>> The reason why -ds- or your -findname- come into the picture is
>> because I would like to take some strings out of the variable label
>> and place them into the data.
>> So let us consider only one variable variable1ab. "A B" is the
>> variable label for the variable variable1ab and I would like to create
>> 2 new variables taking up the values (two strings from the label) A
>> and B and the third variable takes up the original value of the
>> variable. The reason for all this is that I would eventually like to
>> take some correlations -by- A and B (this information is available in
>> the variable label).
>>
>> On Tue, Oct 25, 2011 at 2:10 AM, Nick Cox <njcoxstata@gmail.com> wrote:
>>> You don't show what you tried with -reshape-. If these were string
>>> variables, then you can go
>>>
>>> input date str1 variable1ab  str1 variable2cd
>>> .  1      q                         w
>>> .  2      e                         r
>>> end
>>> reshape long variable, i(date) string
>>> l
>>>
>>>     +-----------------------+
>>>     | date    _j   variable |
>>>     |-----------------------|
>>>  1. |    1   1ab          q |
>>>  2. |    1   2cd          w |
>>>  3. |    2   1ab          e |
>>>  4. |    2   2cd          r |
>>>     +-----------------------+
>>>
>>> I don't follow what you are trying to explain about labels. Value
>>> labels? Variable labels? Nor do I follow what the connection with -ds-
>>> or -findname- (SJ) is here.
>>>
>>> Nick
>>>
>>> On Tue, Oct 25, 2011 at 12:11 AM, Abhimanyu Arora
>>> <abhimanyu.arora1987@gmail.com> wrote:
>>>
>>>> I am trying to reshape data that has the following form---
>>>>
>>>> date variable1ab   variable2cd
>>>> 1      q                         w
>>>> 2      e                         r
>>>>
>>>>
>>>>
>>>> Assume the variable variable1ab is labelled A B, while variable2cd is
>>>> labelled C D (actually strings, though)
>>>>
>>>>
>>>> Finally I would like the data to be of the following form
>>>>
>>>> date var1 var2 value
>>>> 1      A    B      q
>>>> 2      A    B      e
>>>> 1      C    D      w
>>>> 2      C    D      r
>>>>
>>>>
>>>> I feel the solution might lie in the commands -ds- or Nick Cox's
>>>> -findname- together with -reshape- but I am just unable to see how.
>

*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/


© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index