创建新列

时间:2016-08-15 20:27:35

标签: r dataframe

我有一个列,指定我的数据中使用的制裁类型。这就是它的样子:

                          country  sanction_type
                        (chr)           (int)
1                           China         2
2                         Austria         5
3                    South Africa         1
4                          Poland         6
5                          Poland         7
6 Bolivia, Plurinational State of         2

制裁的类型范围从1-10。如何创建两个额外的列,一个包括制裁类型1,2,3,4,另一个包括5,6,7,8,9,10。我还想保留现有的所有制裁类型。非常感谢!

数据集有超过6个观测值,这只是数据样本。对不起,感到困惑。

1 个答案:

答案 0 :(得分:1)

使用dplyr包:

country <- c("China","Austria","South Africa","Poland", "Poland", "Bolivia")
sanction_type <- c(2,5,1,6,7,2)
df <- data.frame(country, sanction_type)

library(dplyr)

df <- mutate(df, srange1 = ifelse(sanction_type <= 4, 1, 0),
             srange2 = ifelse(sanction_type >= 5, 1, 0))