2016-04-18 11 views
0

都市名の文字列が与えられていると、各都市がRを使用している郡をどのように見つけるのでしょうか?私はmapacsパッケージを見てきましたが、私はそれに慣れていません。目標は、郡レベルのデータを自分のデータの都市と関連付けることです。Rを使用して都市名のベクトルの各都市の郡を見つける方法は?

では、次のを持って言う:

city <- c("RALEIGH", "HOLLYWOOD", "DALLAS", "MOUNTAIN VIEW", "OKLAHOMA CITY", "ORLANDO") 
state <- c("NC", "CA", "TX", "CA", "OK", "FL") 
+0

あなたは '再現性の例を提供することを検討してください'ライブラリー(国番号)をチェックすることができます。 – akrun

+0

@akrunが再現可能な例で更新されました – user2205916

+0

あなたが提供した内容は、まだ再現可能な例ではありません。この質問はツール要求のように見えます。再現可能な例は、「この方法を試しましたが、このエラーを生成し続けます。どのようにしてこの問題を解決できますか、概念的に間違っていて、他のものを調べる必要があります。 –

答えて

1

「あなたはGeoNames.orgから、タブ区切り値形式で市/状態情報を取得することができ、データは、無料の包括的でよく構成され、米国のデータについては、。。無料の郵便番号データページでUS.txtファイルを入手してください。そのページのreadme.txtファイルには、形式が記載されています。 See post by Joshua Frank

## Download the file 

temp <- tempfile() 
download.file("http://download.geonames.org/export/zip/US.zip",temp) 
con <- unz(temp, "US.txt") 
US <- read.delim(con, header=FALSE) 
unlink(temp) 

## Find state and county 

colnames(US)[c(3,5,6)] <- c("city","state","county") 
US$city <- tolower(US$city) 
myCityNames <- tolower(c("RALEIGH", "HOLLYWOOD", "DALLAS", "MOUNTAIN VIEW","OKLAHOMA CITY", "ORLANDO")) 
myCities <- US[US$city %in% myCityNames, ] 
myCities <- myCities[c("city","state","county")] 
myCities <- myCities[!duplicated(myCities),] 
myCities <- myCities[order(myCities$city, myCities$state, decreasing = TRUE), ] 

問題は、異なる状態で同じ名前を持つ複数の都市があるということです。

あなたが州内の都市のために正確に見ればあなたはこれを言及は役立つかもしれない:

myPlaces <- data.frame(city = myCityNames, state = c("NC", "CA", "TX", "CA", "OK", "FL")) 
merge(myCities, myPlaces, by = c("city", "state") ,all.y=TRUE) 
+0

これは有望ですね。私は今夜​​それをチェックします – user2205916

+0

それは役に立ちましたか?あなたはそれを受け入れることをお勧めします。 – Roccer

関連する問題