【问题标题】:How to shift the values of a column without removing the last row? [duplicate]如何在不删除最后一行的情况下移动列的值? [复制]
【发布时间】:2019-10-03 08:12:40
【问题描述】:

我想将一列的每个值向上移动一个。我使用了 shift.column() 函数,但每次调用它时它都会删除最后一行。

我的示例数据集是:

     A     B     C
1    4     3    07/01/2019
2    5     9    08/01/2019
3    7     8    06/09/2019
4    8     1    01/23/2019
5    8     5    05/08/2019

我跑了:

dataset <-shift.column(dataset, columns="C")

    A     B     C              C.shifted
1    4     3    07/01/2019     08/01/2019
2    5     9    08/01/2019     06/09/2019
3    7     8    06/09/2019     01/23/2019
4    8     1    01/23/2019     05/08/2019

最后一行 #5 被删除

我想要的是:

    A     B     C              C.shifted
1    4     3    07/01/2019     08/01/2019
2    5     9    08/01/2019     06/09/2019
3    7     8    06/09/2019     01/23/2019
4    8     1    01/23/2019     05/08/2019
5    8     5    05/08/2019

我该怎么做?

【问题讨论】:

  • 使用lead from dplyr df$C.shifted &lt;- lead(df$C)

标签: r


【解决方案1】:

这样做而不是使用shift.column

dataset['C.shifted'] = dataset.C.shift(-1)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-03
    • 2019-06-25
    相关资源
    最近更新 更多