尝试从两列创建新列时出错

时间:2018-03-19 06:36:56

标签: r

我有一个数据集,其中我有两列( A B ),我想要一个新列 C ,它给了我一个日期从 B 列的第二个日期开始

A       B           C
1     20170112     20170211
3     20170211     20170315
5     20170315     20170413
9     20170413     20170516
12    20170516     

C 中的最后一个值可以为零或为空。

我正在尝试使用此代码

  ab = ab %>% group_by(A) %>% mutate(C = B[-1])

但它给了我错误

  

mutate_impl(.data,dots)中的错误:列C的长度必须为13   (组大小)或一个,而不是12

1 个答案:

答案 0 :(得分:3)

dplyr::lead是专为此设计的。

df %>%
  mutate(C = lead(B, default = 0))