将列添加到其他列

时间:2017-06-01 08:00:58

标签: r

我想要两列并添加另外两列。例如,我有以下数据:

EU.Member.States    X.    Other.countries..continued.   X..1
Austria             122   Cameroon                      203
Belgium             150   Canada                        156
Denmark             179   Canary Islands                132
Finland             156   Cape Verde                    147
France              130   Cayman Islands                213

如何获取" Other.countries..continued下的行。"和" X..1"并直接添加到" EU.Member.States"和" X。"分别?

我尝试过使用(tidyr)联合但没有成功。

1 个答案:

答案 0 :(得分:1)

您的问题几乎与this one相同。使用dplyr包中的管道我可以先建立一个解决方案,首先复制列名,然后应用经典rbind。我只使用了你的例子的前两行:

df %>% setNames(names(df)[c(1,2,1,2)]) %>% {rbind(.[,1:2], .[,3:4])}
#### EU.Member.States  X.
#### 1          Austria 122
#### 2          Belgium 150
#### 3         Cameroon 203
#### 4           Canada 156

注意:这里的括号告诉管道不要将.作为隐含的第一个参数。