9

データを結合したいときに、rworldmap パッケージがサポートする国、地域 (?)、および大陸のリストを取得する方法はありますか?

私はいくつかのグーグル検索を行い、Rから始めたばかりです.

ありがとう。

4

5 に答える 5

9

rworldmapこのパッケージは、パッケージの上にいくつかの追加機能を提供しているように思えmapsます。

これが実際に当てはまる場合は、次のことができます。

library(maps)
x <- map("world", plot=FALSE)
str(x)
List of 4
 $ x    : num [1:27121] -130 -130 -132 -132 -132 ...
 $ y    : num [1:27121] 55.9 56.1 56.7 57 57.2 ...
 $ range: num [1:4] -180 190.3 -85.4 83.6
 $ names: chr [1:2284] "Canada" "South Africa" "Denmark" "Great Lakes:Superior, Huron, Michigan" ...
 - attr(*, "class")= chr "map"

mapsこれによりデータベースが抽出され、要素namesには各マップ ポリゴンの名前が含まれます。これらの名前は、実際には要素がコロンで区切られた複数レベルのリストです。たとえば、英国に属するポリゴンのリストを取得するには:

x$names[grep("UK", x$names)]
 [1] "UK:Gibralter"                         
 [2] "UK:Scotland:Isle of Lewis"            
 [3] "UK:Pitcairn Island"                   
 [4] "UK:Guernsey"                          
 [5] "UK:Great Britain"                     
 [6] "UK:Scotland:Shetland Islands:Unst"    
 [7] "UK:Saint Mary's"                      
 [8] "UK:Scotland:Shetland Islands:Yell"    
 [9] "UK:Northern Ireland"                  
[10] "UK:Bermuda"                           
[11] "UK:Tristan da Cunha Island"           
[12] "UK:Scotland:Saint Kilda"              
[13] "UK:Scotland:Ruhm"                     
[14] "UK:Scotland:Benbecula"                
[15] "UK:Scotland:North Uist"               
[16] "UK:Saint Helena Island"               
[17] "UK:Scotland:Island of Skye"           
[18] "UK:Scotland:Barra"                    
[19] "UK:Scotland:Island of Mull"           
[20] "UK:Henderson Island"                  
[21] "UK:Isle of Sheppey"                   
[22] "UK:Jersey"                            
[23] "UK:Scotland:Coll"                     
[24] "UK:Scotland:Jura"                     
[25] "UK:Scotland:Island of Arran"          
[26] "UK:Scotland:Tiree"                    
[27] "UK:Scotland:Islay"                    
[28] "UK:Ascension Island"                  
[29] "UK:Scotland:Colonsay"                 
[30] "UK:Scotland:Shetland Islands:Mainland"
[31] "UK:Scotland:South Uist"               
[32] "UK:Scotland:Orkney Islands:Hoy"       
[33] "UK:Gough Island"                      
[34] "UK:Scotland:Orkney Islands:Mainland"  
于 2011-10-14T11:39:20.753 に答える
5

ビネットの 1 つを見ると、これは機能するはずです。

require(rworldmap)
data(countryExData)
countries <- countryExData[, 2]
EPI_regions <- countryExData[, 3]
GEO_regions <- countryExData[, 4]

文法学校で教えられる大陸分割を取得したい場合は、GEO_regions でさらに処理が必要になります。

> countryExData[ 1:10, 2:4]
                            Country                  EPI_regions
1                            Angola           Sub-Saharan Africa
2                           Albania    Central and Eastern Europ
3  United Arab Emirates             Middle East and North Africa
4                         Argentina    Latin America and Caribbe
5                           Armenia Middle East and North Africa
6                         Australia    East Asia and the Pacific
7                           Austria                       Europe
8                        Azerbaijan    Central and Eastern Europ
9                           Burundi           Sub-Saharan Africa
10                          Belgium                       Europe
             GEO_subregion
1          Southern Africa
2           Central Europe
3        Arabian Peninsula
4            South America
5           Eastern Europe
6  Australia + New Zealand
7           Western Europe
8           Eastern Europe
9           Eastern Africa
10          Western Europe
于 2011-10-14T12:17:59.333 に答える
2

名前が maps パッケージと同じではないことは確かです。このコードで名前とコードのリストを取得できます。

library(rworldmap)
temp_map = getMap(resolution='coarse')
temp_map@data

名前は にありtemp_map@data[['NAME']]ます。ただし、可能であれば、ISO コード セットのいずれかを使用することをお勧めします。名前はデータセット間で非常に一貫性がなく、イライラするような違いが原因で壊れることがあります。たとえば、コートジボワールは、サーカムフレックスの有無にかかわらず指定できます。サーカムフレックスは、同じように表示されていても、異なる方法でエンコードされることがあります。

于 2013-01-11T22:10:15.427 に答える
0

map_dataの関数を見てくださいggplot2。R マップを data.frames に変換します。

于 2011-10-14T12:25:52.093 に答える