繁体   English   中英

如何在 R 中从第二行开始将值从一列复制到另一列

[英]How can I copy values from one column to another starting on the second row, in R

我正在尝试将值从一列复制到 R 中的新列,从第二列开始。

我已经尝试过df$B <- df$A[-1,]但由于它消除了其中一个值,因此该列将不再具有相同的长度。

即,我需要的是以下内容(基于 A 列创建 B 列)。

   A  B
1  a  b
2  b  c
3  c  d
4  d  e
5  e  f
6  f  g
7  g  h
8  h  i
9  i  j
10 j  NA

您可以使用以下任何选项:

df$B <- dplyr::lead(df$A)
df$B <- data.table::shift(df$A, type = "lead")
df$B <- c(tail(df$A, -1), NA)
df$B <- c(df$A[-1], NA)

我们也可以做

df <- transform(df, B = c(A[-1], NA))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM