首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >前一行的减法值:生态寿命结构

前一行的减法值:生态寿命结构
EN

Stack Overflow用户
提问于 2015-11-06 08:36:15
回答 1查看 78关注 0票数 0

我希望我能得到一些帮助。我正在构建一个生命表,不是为了保险,而是为了生态学(任何种类的野生动物的种群横截面),所以本质上是审查诸如吸烟者/不吸烟者、怀孕、性别、健康状况等变量:

代码语言:javascript
复制
AgeClass=C(1,2,3,4,5,6)
SampleSize=c(100,99,87,46,32,19)
for(i in 1:6){
+ PropSurv=c(Sample/100)
+ }
> LifeTab1=data.frame(cbind(AgeClass,Sample,PropSurv))

这给了我这个

代码语言:javascript
复制
ID  AgeClas  Sample  PropSurv
1    1       100       1.00
2    2        99       0.99
3    3        87       0.87
4    4        46       0.46
5    5        32       0.32
6    6        19       0.19

我现在正试图计算每一行死亡的人(DeathInt),方法是取幸存的人的初始人数并减去它下面的数字(即100-99,然后99-87,然后87-46,等等)。试着像这样:

代码语言:javascript
复制
ID  AgeClas   Sample   PropSurv  DeathInt
 1     1       100       1.00       1
 2     2        99       0.99       12
 3     3        87       0.87       41
 4     4        46       0.46       14
 5     5        32       0.32       13
 6     6        19       0.19       NA

我找到了thisthis,我不确定他们是否回答了我的问题,因为这些家伙根据组减去了值。我只想逐行减去值。

另外,顺便提一句:我做了一个for(),以得到每个年龄组中幸存下来的比例。我想知道是否有其他的方法去做,或者这是否是正确的,最简单的方法。

第二个注意事项:如果有任何R-用户知道一个更容易的方法来做一个生态生命表,请告诉我!

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-06 09:03:13

如果有包含数字的向量x,则可以使用diff函数计算差异。

在你的情况下

代码语言:javascript
复制
LifeTab1$DeathInt <- c(-diff(Sample), NA)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33562563

复制
相关文章

相似问题

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