从data.frame中每组的xy坐标计算坡度
我有一个从data.frame中每组的xy坐标计算坡度,r,dataframe,dplyr,R,Dataframe,Dplyr,我有一个xydata.frame,以及其他因子,例如: df <- data.frame(y = c(0.05, -0.03, -0.13, -0.24, 0.05, -0.03, -0.13, -0.24, 0.59, 1.97, 2.26, 1.89, 0.59, 1.97, 2.26, 1.89), x = c(0, 1.58, 2, 4.58, 0, 1.58, 2, 4.58, 0, 1.58, 2, 4.58, 0, 1.58, 2,
xy
data.frame
,以及其他因子,例如:
df <- data.frame(y = c(0.05, -0.03, -0.13, -0.24, 0.05, -0.03, -0.13, -0.24, 0.59, 1.97, 2.26, 1.89, 0.59, 1.97, 2.26, 1.89),
x = c(0, 1.58, 2, 4.58, 0, 1.58, 2, 4.58, 0, 1.58, 2, 4.58, 0, 1.58, 2, 4.58),
sex = c('F', 'F', 'F', 'F', 'M', 'M', 'M', 'M', 'F', 'F', 'F', 'F', 'M', 'M', 'M', 'M'),
group = c('B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A'))
df为了使用dplyr
找到斜率(根据您的定义),lag()
函数可能会有用
超前
和滞后
功能:
查找向量中的“下一个”或“上一个”值。用于比较当前值之前或之后的值
为了实现按因子变量分组,可以首先使用dplyr::group_by()
。这是通用的,可以接受一个或多个分组变量
下面是一个可复制的示例,显示了各组的计算结果
库(dplyr)
#>
#>正在附加包:“dplyr”
#>以下对象已从“package:stats”屏蔽:
#>
#>滤波器,滞后
#>以下对象已从“package:base”屏蔽:
#>
#>相交、setdiff、setequal、并集
df%
按(性别、组别)分组%>%
突变(斜率=(y-滞后(y))/(x-滞后(x)))
#>#tibble:16 x 5
#>#群体:性别,群体[4]
#>y x性别组斜率
#>
#> 1 0.0500 0. F B NA
#>2-0.0300 1.58华氏度-0.0506华氏度
#>3-0.130 2.00华氏度-0.238华氏度
#>4-0.240 4.58华氏度-0.0426华氏度
#> 5 0.0500 0. M B NA
#>6-0.0300 1.58米B-0.0506
#>7-0.130 2.00米B-0.238
#>8-0.240 4.58毫巴-0.0426毫巴
#> 9 0.590 0. 法娜
#>10 1.97 1.58华氏度0.873度
#>11 2.26 2.00华氏0.690度
#>12 1.89 4.58华氏度-0.143
#> 13 0.590 0. 玛娜
#>14 1.97 1.58 M A 0.873
#>15 2.26 2.00 M A 0.690
#>16 1.89 4.58毫安-0.143毫安
由(v0.2.0)于2018-09-03创建。为了使用dplyr
查找坡度(根据您的定义),lag()
函数可能有用
超前
和滞后
功能:
查找向量中的“下一个”或“上一个”值。用于比较当前值之前或之后的值
为了实现按因子变量分组,可以首先使用dplyr::group_by()
。这是通用的,可以接受一个或多个分组变量
下面是一个可复制的示例,显示了各组的计算结果
库(dplyr)
#>
#>正在附加包:“dplyr”
#>以下对象已从“package:stats”屏蔽:
#>
#>滤波器,滞后
#>以下对象已从“package:base”屏蔽:
#>
#>相交、setdiff、setequal、并集
df%
按(性别、组别)分组%>%
突变(斜率=(y-滞后(y))/(x-滞后(x)))
#>#tibble:16 x 5
#>#群体:性别,群体[4]
#>y x性别组斜率
#>
#> 1 0.0500 0. F B NA
#>2-0.0300 1.58华氏度-0.0506华氏度
#>3-0.130 2.00华氏度-0.238华氏度
#>4-0.240 4.58华氏度-0.0426华氏度
#> 5 0.0500 0. M B NA
#>6-0.0300 1.58米B-0.0506
#>7-0.130 2.00米B-0.238
#>8-0.240 4.58毫巴-0.0426毫巴
#> 9 0.590 0. 法娜
#>10 1.97 1.58华氏度0.873度
#>11 2.26 2.00华氏0.690度
#>12 1.89 4.58华氏度-0.143
#> 13 0.590 0. 玛娜
#>14 1.97 1.58 M A 0.873
#>15 2.26 2.00 M A 0.690
#>16 1.89 4.58毫安-0.143毫安
由(v0.2.0)于2018年9月3日创建