次のようなデータがあります。
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))
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 は無視してください。