将列减为R中下一行的另一列
我想计算c=b-a和d=b2-a3的减法。。。我该怎么做将列减为R中下一行的另一列,r,dataframe,R,Dataframe,我想计算c=b-a和d=b2-a3的减法。。。我该怎么做 name a b c=b-a d=b2-a3… peter 80 100 20 30 dancy 70 90 20 20 tiger 70 85 15 20 pop 85 101 16 29 rock 72 111 39 非常感谢你 假设您的数据位于数据框中,要使用tidyverse方法重新创建列,您可以执行以下操作: library
name a b c=b-a d=b2-a3…
peter 80 100 20 30
dancy 70 90 20 20
tiger 70 85 15 20
pop 85 101 16 29
rock 72 111 39
非常感谢你 假设您的数据位于数据框中,要使用tidyverse方法重新创建列,您可以执行以下操作:
library(tidyverse)
yourdata <- yourdata %>%
mutate(c = b - a,
d = b - lead(a))
库(tidyverse)
你的数据%
变异(c=b-a,
d=b-导线(a))
相反,您可以使用lag,要增加lag或lead中的步数,您可以使用lag(列名称,n=步数)。这里有一个带有
数据的选项。表
library(data.table)
setDT(df1)[, c := b - a][, d := b - shift(a, type = 'lead')]
对于c
:YourDataframe$c对于d
:YourDataframe$d如果这是答案,为什么在注释之间?@Edo对于我来说,代码是基本的。如果你愿意,你可以根据我的评论给出答案。[,':='(c=b-a,d=b-shift(a,type='lead'))]