我有一个数据集,其中我有两列( 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
答案 0 :(得分:3)
dplyr::lead
是专为此设计的。
df %>%
mutate(C = lead(B, default = 0))