Bonjour,
Ayant buté récemment sur le même type de problèmes, je me permets de renvoyer vers cette discussion qui affine l'exemple de la documentation du package "vegan" et permet d'aboutir à quelque-chose de fonctionnel :
https://groups.google.com/g/davis-rug/c/yC__V59-K_oDans mon cas, avec un fichier ayant deux colonnes : l'espèce ("SPECIES") et l'expédition ("EXPEDITION"), le code opérationnel est :
Code : Tout sélectionner
library("vegan")
library("plyr")
library("BiodiversityR")
p_file<-"MON_FICHIER.txt"
df<-data.frame(read.csv(file=p_file, sep="\t", header=TRUE))
df<-df[,1:2]
df <- ddply(df, .(df$SPECIES, df$EXPEDITION), nrow)
colnames(df)<-c("SPECIES","EXPEDITION", "n")
community<-makecommunitydataset(df, "EXPEDITION","SPECIES", "n")
comm_agg = colSums(community) # summing species counts by column
S <- specnumber(comm_agg) # observed number of species
raremax = 1 # number of individuals to use in rarefaction
# Plotting rarefied species number
Srare <- rarefy(comm_agg, raremax) # rarefied number of species
plot(S, Srare, xlab = "Observed No. of Species", ylab = "Rarefied No. of Species")
abline(0, 1)
# Plotting rarefaction curve
rarecurve(matrix(comm_agg, nrow = 1), step = 1, sample = raremax, cex = 0.6)
Les données doivent être converties sous forme matricielle, avec une colonne par espèce et une ligne par récolteur. La fonction
makecommunitydataset du package
BiodiversityR permet d'obtenir cette structure à partir du tableau de départ. colSums remet certes ensuite les données sous une forme à une seule colonne...
Si j'ai bien compris, le nom de
raremax peut induire en erreur, car il indique la taille
minimale des expéditions qui seront retenues dans le resampling effectué par
rarecurve.
Toutefois, pour revenir à la question initiale, la courbe de raréfaction ne me paraît pas devoir être tracée en fonction de la surface prospectée, mais du nombre de spécimens récoltés lors de chaque évènement. Comme elle sous-échantillonne une ou plusieurs fois le jeu de données, puis calcule le taux moyen d'accroissement de la diversité, elle ne permet pas de préserver l'ordre chronologique des évènements de collecte. La courbe d'accumulation peut être plus facilement reliée à la progression de site en site que la courbe de régression.