2011-10-14 26 views
5

當我想要加入數據時,有沒有辦法獲得rworldmap軟件包支持的國家,地區(?)和大洲列表?rworldmap軟件包國家代碼

我做了一些谷歌搜索,剛剛開始與R.

謝謝。

+0

什麼是'rworldmap'?你在哪個包中找到了這個? – Andrie

+0

它是一個R包:http://cran.r-project.org/web/packages/rworldmap/index.html我編輯了這個問題,希望讓事情更清楚。 – cs0815

+0

我認爲你已經閱讀過你在鏈接到的頁面上可以找到的兩個包裝短片?這些似乎包含許多有用的示例和常見問題解答。 – Andrie

回答

6

在我看來,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" 
2

望着看來這應該工作的護身符之一:

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

如果你想獲得教大陸分裂在文法學校那麼就需要對HTË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 
0

看看在map_data功能ggplot2。它將R映射轉換爲data.frames。

2

我相當確定名稱與地圖包中的名稱不同。您可以使用此代碼獲取名稱和代碼的列表。

library(rworldmap) 
temp_map = getMap(resolution='coarse') 
[email protected] 

姓名在[email protected][['NAME']]。 但是,如果可以的話,最好使用ISO代碼集之一。名稱在數據集之間非常不一致,有時令人沮喪的差異會打破它。例如,科特迪瓦可以帶有或不帶有旋律,而旋律有時編碼方式不同,即使它們顯示相同。

0

我得到一個錯誤,導致我到這個解決方案getMap()$名稱