R 如何按行减列?
我想在R中做一个简单的减法,但我不知道怎么解。我想知道我是否必须做一个循环或者是否有一个函数 我有一列包含数值变量,我想用n-1减去nR 如何按行减列?,r,calculus,R,Calculus,我想在R中做一个简单的减法,但我不知道怎么解。我想知道我是否必须做一个循环或者是否有一个函数 我有一列包含数值变量,我想用n-1减去n Time_Day Diff 10 10 15 5 45 30 60 15 因此,我想找到变量“Diff”。您也可以尝试使用packagedplyr library(dplyr) mutate(df, dif=Time_Day-lag(Time_Day)) # Time_Day Diff dif # 1 10 10 NA # 2
Time_Day Diff
10 10
15 5
45 30
60 15
因此,我想找到变量“Diff”。您也可以尝试使用package
dplyr
library(dplyr)
mutate(df, dif=Time_Day-lag(Time_Day))
# Time_Day Diff dif
# 1 10 10 NA
# 2 15 5 5
# 3 45 30 30
# 4 60 15 15
这能满足你的需要吗 在此,我们将列另存为变量:
c <- c(10, 15, 45, 60)
使用
diff
:
df <- data.frame(Time_Day = c(10, 15, 45, 60))
df$Diff <- c(df$Time_Day[1], diff(df$Time_Day))
df
## Time_Day Diff
##1 10 10
##2 15 5
##3 45 30
##4 60 15
看看
?diff
谢谢,我不知道这个函数:))谢谢你的完美回答!谢谢,但我更喜欢diff或dplyr的简单方法:)很高兴你找到了答案!祝您的项目好运。:-)
dif <- c - cm1
dif # 10 5 30 15
df <- data.frame(Time_Day = c(10, 15, 45, 60))
df$Diff <- c(df$Time_Day[1], diff(df$Time_Day))
df
## Time_Day Diff
##1 10 10
##2 15 5
##3 45 30
##4 60 15
library("dplyr")
df <- data.frame(Time_Day = c(10, 15, 45, 60))
df %>% mutate(Diff = c(Time_Day[1], diff(Time_Day)))