2016-04-25 123 views
2

我想我发现了一个错误或者说在包countrycode缺少更新:countrycode()不承认科索沃?

library(countrycode) 
testData <- data.frame(country=c(rep("Germany",3),rep("Kosovo",3))) 
testData$iso3 <- countrycode(testData$country, "country.name", "iso3c") 

这不仅出于政治原因,也因为国际组织,如国际货币基金组织和国际清算银行也包括科索沃是有问题的数据集。国家代码将在这里产生NA's

我该怎么处理这些信息?我认为iso3c应该是KSV。

编辑:我联系了包装维护人员,他回答说,直到科索沃获得官方承认,他宁愿保留这种方式。

+3

联系包维护者 - 文森特'阿雷尔,班多克# – rbm

+2

科索沃不是一个普遍认可的国家,因此不属于标准:http://unstats.un.org/unsd/tradekb/Knowledgebase/Country-Code和https:// www .iso.org/obp/ui /#搜索 – James

+1

,但它出现在人们正在使用的公认数据集中 –

回答

4

您要求提供ISO国家代码,而ISO根本没有为科索沃编码。 FIPS了,虽然:

> countrycode('Kosovo', 'country.name', 'fips104') 
[1] "KV" 

如果你想“KSV”作为结果,您可以使用世行代码,而不是:

> countrycode('Kosovo', 'country.name', 'wb') 
[1] "KSV" 
+0

不错!谢谢!我通常在ISO代码中工作,这就是问题出现的原因。 –