如何在R中使用countrycode包的codelist_panel
How to use the codelist_panel of the countrycode package in R
我正在尝试使用 R 中国家代码包中的面板代码列表,但不知道如何包含年份。
我有一个包含国名和年份的数据集,我想添加相应的奶牛代码作为新变量或替换国名。我只是不知道该怎么做。
我的数据看起来有点像这样:
country <- c("Australia", "Australia", "Canada", "Belgium")
year <- c(1995, 2000, 1880, 1885)
a <- c( 5.55, 4.5, 6.75, 8.3)
data<- data.frame(country, year, a)
我认为这是标准方法:
data$country2 <- countrycode(data$country, "country.name", "cown", warn = TRUE)
我得到一个带有相应代码的变量 "country2",但不是那个时间段的正确代码。根据包手册,我应该可以使用 codelist_panel,但我只是不知道如何使用,也没有有用的示例。每一个提示都非常感谢!
谢谢!
您需要合并您的数据和 codelist_panel
。
输入数据 - 我更改了国家列的列名,因此我们可以在下面的 by
参数中将其与年份列一起指定。
dat <- data.frame(country.name.en = country, year, a)
结果
library(countrycode)
merge(dat,
codelist_panel[, c("country.name.en", "year", "cown")],
by = c('year', 'country.name.en'))
# year country.name.en a cown
#1 1880 Canada 6.75 NA
#2 1885 Belgium 8.30 211
#3 1995 Australia 5.55 900
#4 2000 Australia 4.50 900
我正在尝试使用 R 中国家代码包中的面板代码列表,但不知道如何包含年份。
我有一个包含国名和年份的数据集,我想添加相应的奶牛代码作为新变量或替换国名。我只是不知道该怎么做。
我的数据看起来有点像这样:
country <- c("Australia", "Australia", "Canada", "Belgium")
year <- c(1995, 2000, 1880, 1885)
a <- c( 5.55, 4.5, 6.75, 8.3)
data<- data.frame(country, year, a)
我认为这是标准方法:
data$country2 <- countrycode(data$country, "country.name", "cown", warn = TRUE)
我得到一个带有相应代码的变量 "country2",但不是那个时间段的正确代码。根据包手册,我应该可以使用 codelist_panel,但我只是不知道如何使用,也没有有用的示例。每一个提示都非常感谢! 谢谢!
您需要合并您的数据和 codelist_panel
。
输入数据 - 我更改了国家列的列名,因此我们可以在下面的 by
参数中将其与年份列一起指定。
dat <- data.frame(country.name.en = country, year, a)
结果
library(countrycode)
merge(dat,
codelist_panel[, c("country.name.en", "year", "cown")],
by = c('year', 'country.name.en'))
# year country.name.en a cown
#1 1880 Canada 6.75 NA
#2 1885 Belgium 8.30 211
#3 1995 Australia 5.55 900
#4 2000 Australia 4.50 900