Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
From | Jeph Herrin <info@flyingbuttress.net> |
To | statalist@hsphsun2.harvard.edu |
Subject | Re: st: RE: Dropping parts of strings (i.e. Baldwin County becomes Baldwin) |
Date | Thu, 06 Mar 2014 13:56:49 -0500 |
Or, simply: replace county=word(county,1) ? hth, Jeph On 3/6/2014 1:40 PM, Radwin, David wrote:
Cody, Would something simpler like this work? Note the compound quotation marks. foreach x in `"County"' `"Borough"' `"Township"' `"Census Area"' { replace county = trim(subinstr(county, "`x'", "", .)) } David -- David Radwin, Senior Research Associate Education and Workforce Development RTI International 2150 Shattuck Ave. Suite 800, Berkeley, CA 94704 Phone: 510-665-8274 www.rti.org/education-----Original Message----- From: owner-statalist@hsphsun2.harvard.edu [mailto:owner- statalist@hsphsun2.harvard.edu] On Behalf Of Andrew Maurer Sent: Thursday, March 06, 2014 10:31 AM To: statalist@hsphsun2.harvard.edu Subject: RE: st: RE: Dropping parts of strings (i.e. Baldwin County becomes Baldwin) No, that's why I gave united_kingdom as an example. It: - removes everything including and after the first + sign observed - replaces all remaining underscores with spaces - trims the leading and trailing spaces "__united_kingdom__+___county" becomes "united kingdom" There would be problems if you had a country with a + sign in the name, but I don't expect you'll have that scenario. Andrew Maurer -----Original Message----- From: owner-statalist@hsphsun2.harvard.edu [mailto:owner- statalist@hsphsun2.harvard.edu] On Behalf Of Cody Cook Sent: Thursday, March 06, 2014 12:24 PM To: statalist@hsphsun2.harvard.edu Subject: Re: st: RE: Dropping parts of strings (i.e. Baldwin County becomes Baldwin) Hi Andrew, Thanks for the response! I think this route is promising, but (just by looking at the code, I haven't run it) it looks like it may have trouble with counties that have two words in their name, or no? Is there a way to account for this? Best, Cody On Mar 6, 2014, at 11:13 AM, Andrew Maurer <Andrew.Maurer@qrm.com> wrote:Maybe not the most efficient way, but this works (replaces internalunderscores with spaces):local name __united_kingdom__+___county di trim(subinstr(substr(`"`name'"',1,strpos(`"`name'"',"+")-1),"_","",.))or for if your variable is named "oldname": gen newname = trim(subinstr(substr(oldname,1,strpos(oldname,"+")-1),"_"," ",.))(if you want internal underscores then gen newname2 = subinstr(newname,"","_",.)Andrew Maurer -----Original Message----- From: owner-statalist@hsphsun2.harvard.edu [mailto:owner-statalist@hsphsun2.harvard.edu] On Behalf Of Cody CookSent: Thursday, March 06, 2014 11:02 AM To: statalist@hsphsun2.harvard.edu Subject: st: Dropping parts of strings (i.e. Baldwin County becomesBaldwin)Hi Stata Helpers, I have a ton of census data that I'm trying to merge with some otherdata. The other data only has county names, not FIPS.For the census data, it is formatted as __name___ + ___ census type ___where census type is either "County", "Borough", "Census Area" and maybe a few more. This is all in one string. I want to only keep the part that identifies the specific county.Basically, is there a way to say "if county includes "XXXX" replacewithout "XXXX""Best, Cody* * 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/