添加2列并在这2(R)之后创建新列

时间:2019-03-27 07:27:27

标签: r dataframe add

假设我有一个包含a,b,c,d,e,f,g,h列的数据框。

我想将d和e列的值相加,并创建一个包含d和e之后的结果的列,使它变为:

a,b,c,d,e,newcolumn,f,g,h

有没有办法做到这一点?正如我发现的那样,对R中的列进行重新排序非常令人沮丧,尤其是当您有一个包含许多列的巨大数据框时。

感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

使用dplyr

library(dplyr)

data %>%
 mutate(newcolumn = d + e) %>%
 select(a,b,c,d,e,newcolumn,f,g,h)

data.table

setDT(data)

data[,newcolumn := d + e,] 
setcolorder(data, c("a","b","c","d","e","newcolumn")

tibble

library(tibble)

add_column(data, "newcolumn" = data$d + data$e, .after = "e")

base

data <- within(data, newcolumn <- d + e)
data <- data[, c(1:5, 9, 6:8)]