Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何按行减列?_R_Calculus - Fatal编程技术网

R 如何按行减列?

R 如何按行减列?,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

我想在R中做一个简单的减法,但我不知道怎么解。我想知道我是否必须做一个循环或者是否有一个函数

我有一列包含数值变量,我想用n-1减去n

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)))