Stata The Stata listserver
[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

Re: st: substring help


From   David Kantor <dkantor@jhu.edu>
To   statalist@hsphsun2.harvard.edu
Subject   Re: st: substring help
Date   Tue, 07 Jun 2005 10:49:19 -0400

At 10:32 AM 6/7/2005 -0400, Heather Gold wrote:
Dear Fellow Listers -

Someone has probably figured this out previously, but I can't seem to find exactly what I need in the archives or help...

I have a string variable with county and state names merged as one string 15 characters long. I need to get rid of the trailing state name.
For example, I have:

Genesee NY
Bronx NY
Queens NY

And I want to have only:
Genesee
Bronx
Queens

I tried
gen cnty=substr(cntyname, -2,2)

But that does the "opposite" of what I want, ie, returns "NY".
Because the county name varies in length, I can't just do a substring of a specific length, starting from the beginning of the variable.

Shouldn't there be an obvious solution? I can't find it.
[...]

Are the unwanted parts *always* the final 3 characters? If so, the solution is easy. (If not, it may be a very complicated matter, but I won't go into that.)

If you just want to trim off the final 3 characters...

gen byte len = length(cntyname)
gen cnty=substr(cntyname, 1, len-3)
drop len

----

You can probably squish this into one command:
gen cnty=substr(cntyname, 1, length(cntyname)-3)


HTH,
--David
David Kantor
Institute for Policy Studies
Johns Hopkins University
dkantor@jhu.edu
410-516-5404

*
* For searches and help try:
* http://www.stata.com/support/faqs/res/findit.html
* 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   |   What's new   |   Site index