首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找出同一data.frame的每一行对的差异

找出同一data.frame的每一行对的差异
EN

Stack Overflow用户
提问于 2017-11-12 21:37:08
回答 2查看 37关注 0票数 0

我想计算每隔一对行的差值。例如,从第二个开始第一个,从第四个开始第三个等等。

假设我有x <- c(1,3,4,7)。我希望结果是c((3-1),(7-4))

我找了很久,什么也没找到。我希望它不是复制品。

EN

回答 2

Stack Overflow用户

发布于 2017-11-12 22:23:01

您应该将向量转换为两行数组,然后使用diff计算行之间的差异,在本例中,这将是第二行和第一行之间的差异,因为只有两行。

代码语言:javascript
复制
> v <- c(1,3,4,7)
> v
[1] 1 3 4 7
> m <- matrix(v, nrow = 2)
> m
     [,1] [,2]
[1,]    1    4
[2,]    3    7
> diff(m)
     [,1] [,2]
[1,]    2    3

在一个步骤中,返回一个向量:

代码语言:javascript
复制
> c(diff(matrix(v, nrow = 2)))
[1] 2 3
票数 1
EN

Stack Overflow用户

发布于 2017-11-12 23:35:31

使用iris数据集显示的示例。使用lapply()函数对数据帧执行操作。对于连续行之间的差异,使用diff(),然后提取每个替代差异。

输入

代码语言:javascript
复制
df2 <- head(iris[,1:4])
df2
#   Sepal.Length Sepal.Width Petal.Length Petal.Width
# 1          5.1         3.5          1.4         0.2
# 2          4.9         3.0          1.4         0.2
# 3          4.7         3.2          1.3         0.2
# 4          4.6         3.1          1.5         0.2
# 5          5.0         3.6          1.4         0.2
# 6          5.4         3.9          1.7         0.4

连续行之间的差异

代码语言:javascript
复制
data.frame(lapply(df2, function(x) diff(x)))
#   Sepal.Length Sepal.Width Petal.Length Petal.Width
# 1         -0.2        -0.5          0.0         0.0
# 2         -0.2         0.2         -0.1         0.0
# 3         -0.1        -0.1          0.2         0.0
# 4          0.4         0.5         -0.1         0.0
# 5          0.4         0.3          0.3         0.2

所需的输出

第2行与第1行的差异,第4行与第3行的差异,第6行与第5行的差异

代码语言:javascript
复制
data.frame(lapply(df2, function(x) diff(x)))[seq(1, nrow(df2), by = 2),]
#   Sepal.Length Sepal.Width Petal.Length Petal.Width
# 1         -0.2        -0.5          0.0         0.0
# 3         -0.1        -0.1          0.2         0.0
# 5          0.4         0.3          0.3         0.2
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47249444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档