我的数据如下所示:
Country.Code Indicator.Code X1960 X1961 X1962 X1963 X1964 X1965
AFG allsi.bi_q1 NA NA NA NA NA NA
AFG allsp.bi_q1 NA NA NA NA NA NA
AFG allsa.bi_q1 NA NA NA NA NA NA
AFG lm_ub.bi_q1 NA NA NA NA NA NA
AFG allsi.gen_pop NA NA NA NA NA NA
AFG allsp.gen_pop NA NA NA NA NA NA
并想让它看起来像这样:
Country.Code Year allsi.bi_q1 allsp.bi_q1 allsa.bi_q1 lm_ub.bi_q1 allsi.gen_pop allsp.gen_pop
AFG 1960 NA NA NA NA NA NA
AFG 1961 NA NA NA NA NA NA
AFG 1962 NA NA NA NA NA NA
AFG 1963 NA NA NA NA NA NA
AFG 1964 NA NA NA NA NA NA
AFG 1965 NA NA NA NA NA NA
我曾尝试使用melt
from reshape2
,但我得到的只是这样的东西(在也使用之后as.numeric(substr(dataset$variable,2,5))
)来获取 year 变量:
Country.Code Indicator.Code variable value year
AFG allsi.bi_q1 X1960 NA 1960
AFG allsp.bi_q1 X1960 NA 1960
AFG allsa.bi_q1 X1960 NA 1960
AFG lm_ub.bi_q1 X1960 NA 1960
AFG allsi.gen_pop X1960 NA 1960
AFG allsp.gen_pop X1960 NA 1960
如何让 的值indicator.code
成为具有value
相应年份和国家/地区值的列?请忽略我示例中的 NA。