我试图计算物种的出现次数(沿着海拔梯度分布)在“等级”的海拔高度 .
这是原始数据框:
tab
R sp N Hauteur Alt Plot Quadrat Microhab Cover
1 R2 B 1 0-50cm 350 P1 Q1 TA 50
2 R2 D 1 0-50cm 350 P1 Q1 TA 50
3 R3 A 2 0-50cm 550 P1 Q1 TA 95
4 R3 C 1 0-50cm 550 P1 Q1 TA 95
5 R3 B 3 0-50cm 550 P1 Q1 TA 95
6 R3 D 4 0-50cm 550 P1 Q1 TA 95
7 R4 C 3 0.5-1m 350 P1 Q1 TB 50
8 R4 A 4 0.5-1m 350 P1 Q1 TB 50
9 R4 E 2 0.5-1m 350 P1 Q1 TB 50
10 R4 D 3 0.5-1m 350 P1 Q1 TB 50
11 R4 B 4 0.5-1m 350 P1 Q1 TB 50
这是我想要获得的:
head(parametres)
SP Altmin Altmax Altmoy nb_350.549 nb_550.749 [...] %_350.549m
A 350 550 450 1 0 ... 50
B 350 550 416.67 2 1 ... 33.3
C 350 550 450 1 0 ... 50
为此,我设法获得了第4列(“SP”,“Altmin”,“Altmax”,“Altmoy”) . 但是我没有设法得到“海拔等级”(例如“nb_350.549”)的发生次数,也没有设法得出每个海拔等级的代表性百分比,关于每个物种的发生次数(例如“ %_350.549) - 实际上是= nb.occ.SP(A)/ nb_350.549 * 100
这是我的脚本:
parametres<-ddply(tab,.(sp),function(esp){
+ summarise(esp,
+ Altmin=min(Alt),
+ Altmax=max(Alt),
+ Altmoy=mean(Alt),
+ )})
任何的想法?
谢谢!
R.
1 回答
这是一个
dplyr
解决方案