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: reading dataset if


From   Nick Cox <njcoxstata@gmail.com>
To   statalist@hsphsun2.harvard.edu
Subject   Re: st: reading dataset if
Date   Thu, 22 Sep 2011 00:02:44 +0100

I am mixing syntaxes here. -use using dataset- not -use dataset-.

Nick

On Wed, Sep 21, 2011 at 11:12 PM, Nick Cox <njcoxstata@gmail.com> wrote:
> You are reaching towards some kind of regular expression test but ==
> is a test for equality.
>
> use dataset.dta if inlist(substr(diagp,1,1), "I", "J")
>
> use dataset.dta if substr(diagp,1,1) == "I" | substr(diagp,1,1) == "J"
>
> Regular expressions are also possible here:
>
> . di regexm("Janvier", "^[IJ]")
> 1
>
> . di regexm("jeunesse", "^[IJ]")
> 0
>
> . di regexm("Jeunesse", "^[IJ]")
> 1
>
> use dataset.dta if regexm(diagp, "^[IJ]")
>
> On Wed, Sep 21, 2011 at 10:46 PM, Emmanuelle Lavaine
> <Emmanuelle.Lavaine@univ-paris1.fr> wrote:
>
>> I have a huge dataset and I would like to get rid of some observations
>> when opening it.
>> I want to open my dataset only if the first character corresponds to
>> 'I' or 'J'
>> for the string variable 'diagp', I have something like:
>>
>> diagp
>> I236
>> I256
>> I52
>> J46
>> J856
>> H343
>> etc..
>>
>> I tried:
>>   use 'dataset.dta' if diagp=="[I-J]*"
>>
>> But I am doing something wrong and I can't figurate it out.
>

*
*   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