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: reading dataset if
From
Nick Cox <[email protected]>
To
[email protected]
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 <[email protected]> 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
> <[email protected]> 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/