Je travaille actuellement sur des données de recherche écologique et j'essaye de le faire depuis des heures maintenant. J'ai une trame de données similaire, mais beaucoup plus grande que celle-ci:
beetles <- data.frame(Area=c("A","A","A","B","B","B","C","C","D","D","D","D"),
Year =c(1993, 1994, 1994, 1994,1995, 1995, 1996,1997,1998,1997,1996,1996),species=c("Harpalus latus","Amara ovata","Harpalus latus","Dromius agilis","Amara ovata","Harpalus latus","Amara ovata","Harpalus latus","Harpalus latus","Amara ovata","Dromius agilis","Harpalus latus"), field_season= c(1,2,2,1,2,2,1,2,3,2,1,1))
Voici ce que je veux faire: j'ai des données sur les coléoptères pour 4 domaines de recherche, échantillonnées sur une plage d'années. Pour l'analyse, j'ai besoin d'une colonne avec le nombre de saison sur le terrain par zone de recherche (field_season) chaque espèce a été capturée. Je recherche la colonne nommée "field_season" qui n'est actuellement pas dans mon data.frame. Pour donner un peu plus de contexte: Pour l'analyse, je veux diviser mon ensemble de données et voir à quel point les communautés de coléoptères différaient au cours des saisons sur le terrain effectuées.
J'ai essayé d'utiliser:
beetles %>% group_by(Area) %>% mutate(field_season = year ?)
mais ne peut pas comprendre comment faire cela. S'il vous plaît, si quelqu'un peut me diriger dans la bonne direction, ce serait très apprécié.
Vous pouvez utiliser à dense_rank
partir de dplyr
:
library(dplyr)
beetles %>% group_by(Area) %>% mutate(field_season_ans = dense_rank(Year))
# Area Year species field_season field_season_ans
# <chr> <dbl> <chr> <dbl> <int>
# 1 A 1993 Harpalus latus 1 1
# 2 A 1994 Amara ovata 2 2
# 3 A 1994 Harpalus latus 2 2
# 4 B 1994 Dromius agilis 1 1
# 5 B 1995 Amara ovata 2 2
# 6 B 1995 Harpalus latus 2 2
# 7 C 1996 Amara ovata 1 1
# 8 C 1997 Harpalus latus 2 2
# 9 D 1998 Harpalus latus 3 3
#10 D 1997 Amara ovata 2 2
#11 D 1996 Dromius agilis 1 1
#12 D 1996 Harpalus latus 1 1
Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.
En cas d'infraction, veuillez [email protected] Supprimer.
laisse moi dire quelques mots