R:使用另一列-1的值创建列

时间:2016-05-27 18:15:19

标签: r dataframe dataset

我在R中有一个包含 n 值的表格。我想要创建一个 B 列,其中包含另一列 A 的值,但要移动它们" up" 1行:

示例:

A    B
_    _
1    2
2    3
3    n
n    n

我知道 A 的第一项将在 B 列中删除,而且我想复制值 n 并移动到最后"空" B 的位置(否则为0,因为我移动了所有值"向上")

3 个答案:

答案 0 :(得分:2)

dat <- data.frame(A = c(1, 2, 3, 4))
dat$B <- dat$A[c(2:length(dat$A), length(dat$A))]

应该工作。

答案 1 :(得分:2)

df1$B <- with(df1,c(tail(A,-1),tail(A,1)))

示例数据:

df1 <- data.frame(A = c(1, 2, 3, 0))

输出:

#> df1
#  A B
#1 1 2
#2 2 3
#3 3 0
#4 0 0

答案 2 :(得分:1)

您只需使用

替换值即可
table$B[1:n-1] <- table$A[2:n]